LINQ и QueryOver - это совершенно разные методы запросов, которые добавляются к тем, которые существовали в NHibernate 2 (Criteria, HQL, SQL)
QueryOver предназначен для строго типизированной версии Criteria и поддерживаетв основном это те же конструкции, которые специфичны для NHibernate.
LINQ - это «стандартный» метод запроса, который означает, что клиентский код может работать на IQueryable без явных ссылок на NHibernate.Он поддерживает другой набор конструкций;было бы трудно сказать, есть ли больше или меньше, чем с QueryOver.
Мое предложение состоит в том, чтобы изучить все поддерживаемые методы запроса, поскольку каждый вариант использования различен, и некоторые лучше работают содин, некоторые работают лучше с другим.