NHibernate in Action
I've been a student of NHibernate for a while now, and have even given presentations on the basics of its usage, but one of the things that has always been difficult is navigating the various sources of documentation that are scattered across the internet. Between the out-of-date documentation on the hibernate.org site, Fabio Maulo's valiant but disorganized attempt to create a Knol site for documentation, and posts on various blogs, it's been difficult to find a coherent narrative about usage and best practices for NHibernate. Fortunately, Manning's NHibernate in Action goes a long way toward providing a canonical source for this information.
Unlike the various online sources, the book is well organized and proceeds from start to finish in a logical order for someone new to NHibernate. It starts with a comparison of the various data access methods on the .NET platform, moves on to basic configuration and usage, and then digs into each of NHibernate's major feature areas, including mapping, persistence mechanisms, caching, and others.
The last section of the book, which may be the most valuable, discusses NHibernate "in the real world." It covers recommended architectural patterns and practices when using NHibernate, and provides greater detail about using a "domain model" and Domain Driven Design within your application. It doesn't cover these topics exhaustively, but provides enough information to stimulate further interest and suggests more detailed sources should the reader wish to delve deeper.
I would recommend this book to anyone considering using NHibernate for their next application, as well as to anyone interested in Object-Relational Mapping concepts in general.