Я бы поддержал опцию LINQ2SQL, если вы используете SQL Server.
LINQ2SQL:
- легко выучить, с большим количеством инструкций, доступных онлайн;
- имеет хороший инструментарий для проектирования и отладки в Visual Studio; и
- обеспечивает адекватную производительность для всех, кроме самых экстремальных ситуаций (например, StackOverflow использует ее для доступа к данным).
Некоторое время ходили слухи о его кончине, но исследования рынка Microsoft, похоже, показывают большую поддержку разработчиков, чем Entity Framework, которая, хотя и, возможно, более мощная, но и более сложная. Навыки LINQ могут передаваться и другим ORM, с опциями для LINQ2Entities (для Entity Framework) и, я полагаю, поддержкой со стороны SubSonic.