In my project, I got a situation with bad behavior of linq with FetchLazyProperties(). FetchLazyProperties() resets lazy property changes. I have written a test for this problem: https://github.com/nhibernate/nhibernate-core/pull/3329 I think this is not correct behavior