Вы правы, что не собираетесь получать быстрее, чем сырые ADO.NET, если вы пытаетесь получить данные с SQL Server в библиотеку C#.
Для получения простого отношения-> сопоставления объектов, но, избегая цены, которую вы платите с помощью более крупных, более полнофункциональных ORM, таких как EF и NH, я обнаружил, что Dapper работает очень хорошо (https://github.com/StackExchange/dapper-dot-net). Это быстрее, чем NH в моих случаях использования, очень проста в использовании, и вы получаете сопоставление, которое вы ищете.
Есть тесты, которые были сделаны в прошлом, глядя на производительность выборки ORM, которые могут дать вам представление о том, что вы можете посмотреть (например, это: http://weblogs.asp.net/fbouma/fetch-performance-of-various-net-orm-data-access-frameworks, что не удивительно обнаружило сырой ADO.NET самый быстрый - хотя это с 2013 года, который является просто древним в интернет-время).
Вы можете сделать свое подобное сравнение довольно быстро с вашими данными и средой, чтобы понять, что может сработать для вашей ситуации.
Кроме того, чтобы подходить к нему под другим углом - насколько часто данные меняются? Нужно ли каждый раз выходить из SQL-сервера? Возможно, вы сможете загрузить его в кеш в памяти, где поиск быстрее, чем запрос от SQL Server.