Если вам нужна скорость быстрого чтения, используйте EF6.x и убедитесь, что вы используете AsNoTracking, а также что вы сначала задаете некоторые дополнительные значения.Это сделает его очень быстрым ... но за ту цену, которая поддерживает только чтение, поэтому не нужно обнаруживать изменения и обновлять данные.Это сделает EF6x в 5 раз быстрее, чем его поведение по умолчанию, см. this .
Также убедитесь, что вы используете представления базы данных, индексы, чтобы добавить дополнительные скорости ко всем выборам.Но лучший совет: всегда проверяйте, какой код отправляется в базу данных со слоя ORM, выполняйте активную загрузку, используйте проекции IQuery, ...
NHibernate также является хорошим инструментом.Я использую его для своей модели предметной области, где я обрабатываю все изменения.