Репозиторий Патерн - это разделение задач. У вас может быть несколько источников данных, таких как память, sql база данных, нет sql базы данных, веб-сервис ....
Так что в больших системах необходимо использовать несколько разных источников данных, работающих по-разному. А хранилище - это слой, который скрывает эти источники и распространяет только цельный интерфейс без зависимости от хранилищ, что хорошо в случае переключения какого-либо источника данных или тестирования.
Прокси - это шаблон объекта. Entity Framework использует шаблон прокси для достижения некоторой дополнительной функциональности. Вы можете отключить его.
dbContext.Configuration.ProxyCreationEnabled = false;
Вы можете быть уверены, что объект, который вы получаете от EF, является прокси-объектом, полным кода. А твой new YOurEntity()
мелкий без прокси.