Fetching from core data VS. passing data through delegate to new view controller

In regards to performance, I am curious if it is a better option to pass data from one view controller to another via persisting the data in the initialVC then fetching it in the receivingVC or should an app perform better if you pass all the data through a delegate method.

Reason is for an array with a large quantity of elements and would it be better to persist then fetch or pass through a delegate.

Define “large” please.