Line-length-tolerant XML diff
Looks like SourceGear DiffMerge will give you this, with its ruleset support for XML (and lots of other languages). I'm not sure if it will fix all your problems, because the example is of course a simplification of the actual program. I tried slightly more complex changes, and those seem to work fine too.
See the sample below for the diff you described
My solution is with beyond compare. ( a much more powerfull tool )
So we start by seeing the problem.
BC has a special XML parsing role : ( it has already XML role , but not with pre-analysis - which is Sorted and Tidied)
so we go to http://www.scootersoftware.com/download.php?zz=kb_moreformats_alt
and now -
hope you'll use it for next edition of C# in depth
p.s. if the text in pictures is too small, just click on the picture to load the original ones.