Раньше (года 2 назад) я бы однозначно рекомендовал NHibernate, но сейчас EF очень подтянулся по функционалу (наконец-то научился мепить enum:). Несомненным плюсом также считаю, что в EF порог вхождения гораздо ниже и присутствует интегрированная (и очень удобная) возможность делать миграции.