Since the 4.1 version, NUnit is providing a UsingPropertiesComparer() suffix to the Is.EqualTo equality constraint. It will recursively check all the object public properties.
You will even get a specific message when a particular property fails the equality test !