Поставщик 3.x LINQ постоянно улучшается. Он поддерживает множество конструкций, хотя и не так много, как EF. Это действительно удобно.
Теперь вы пишете «Буду ли я в конечном итоге использовать собственный язык запросов в NHibernate» , как будто это было плохо. Это не так.
NHibernate имеет 5 различных методов запросов (Criteria, HQL, LINQ, QueryOver и SQL). Каждый из них имеет свои сильные и слабые стороны, лучше адаптируясь к различным сценариям использования.
Я предлагаю вам выучить их все и использовать то, что лучше всего соответствует тому, что вы пытаетесь сделать в каждом конкретном случае. LINQ, независимо от провайдера, всегда имеет утечку при обращении к базе данных SQL. Имейте это в виду.