Utilizzando le Projections è possibile conoscere il numero di "righe" restituite da un criterio di NHibernate:
public int GetCount
{
ICriteria criteria = session.CreateCriteria(typeof(T));
//Impostazione criteria
criteria.SetProjection(Projections.RowCount());
return (int)criteria.List()[0];
}