Entity Framework has made great progress towards being a popular ORM framework.
EF 4 is much more practical and usable version than its previous one.
There’s a nice post which debates about the comparison between NHibernate and EF4:
Debate: Comparing NHibernate and EF 4
“The general consensus appeared to be that NHibernate has a number of features which are missing from Entity Framework 4.0 like read/write batching, "extra" laziness, collection filters, tweaking, and others, however Entity Framework has a better LINQ provider, documentation and it is supported by Microsoft”