Вам действительно нужно выбрать один - все они являются действительными технологиями.
Если вы уже знакомы с низкоуровневыми конструкциями ADO.NET и вам не хочется тратить время на изучение другой методологии, вы можете придерживаться старого старого ADO.NET - это никуда не денется в ближайшее время.
Если вы хотите начать с очень простого ORM, я бы предложил LINQ to SQL. Тем не менее, Microsoft практически отказалась от LINQ to SQL в пользу Entity Framework, поэтому, если ваш проект связан с долгосрочным обслуживанием, LINQ to SQL может быть или не быть лучшим выбором. Это действительно хороший, легкий, простой в использовании фреймворк, хотя ...
Если вы хотите изучить новейшую технологию доступа к данным MS, вы можете попробовать Entity Framework. Начальная настройка не так уж плоха, но Entity Framework - это чудовище, поэтому в какой-то момент может возникнуть некоторая кривая обучения, если вы столкнетесь с чем-то, что работает не так, как вы ожидаете, или вы хотите узнать больше. На данный момент EF достаточно полнофункциональный, но ему все еще не хватает некоторых функций, предлагаемых более зрелыми технологиями доступа к данным, такими как NHibernate.
Наконец, если вы хотите попробовать что-то отличное от предложений Microsoft, NHibernate является отличной платформой. Вы не найдете дизайнеров сущностей, страниц свойств, мастеров, рук и тому подобного, но это почти суть NHibnerate. В Fluent NHibernate основной упор может быть сделан на код вашего домена, а не на базу данных, что делает его очень удобным для модульного тестирования. Entity Framework стал лучше благодаря постоянному невежеству, но он все еще чувствует себя немного тяжелее по сравнению с NHibernate.
В дополнение к этому есть несколько других технологий доступа к надежным данным, которые вы могли бы изучить, но я надеюсь, что это даст вам некоторую информацию для начала.