This is personal opinion, and I must tell you I'm a huge fan of nHibernate.
I'm interested in all Microsoft's initiatives to standardize things. This include in ORM.
When they released the first version of Entity Framework, they were critized enough to call what happened The ADO.NET Entity Framework Saga. Read that blog post and all the link it points to.
Soon after that, the team leader of the project agreed that it got it wrong (I can't find his original blog post, maybe it has been removed).
Today EF framework is very close to nHibernate and I will consider it again in the future because:
- Just like Unit Testing, MVC, Ajax, ... EF will eventually become the standard.
- EF is commercially supported
- nHibernate is powerful, but has only a few contributors.
While I'm too familiar with nHibernate to switch today, I would recommend you to go for Entity Framework without any hesitation.