A nice step by step write up, based off Paul's excellent post
here, by the infamous Matt Wade can be found on his site
here.
Not only does he describe how to move the WinSXS directory, but also the SoftwareDistribution directory, which is used by Windows Update. Both of these directories tend to balloon in size over time, which can be a problem for smaller C: partitions from upgraded Windows XP installations.
True - it is always better to do a fresh install but I know a lot of people still do in-place upgrades when in a hurry or can't do a native install for some reason.
Just because it might not be a best practice doesn't mean it doesn't happen in the real world - I have seen some insane installs in my day. Some of my greatest home experiments have been the cause and result of these endeavors.
Quick example: At one point, on a box at home, I ran out of space to do a new beta build upgrade of Vista on a 9GB hard drive, so I booted off another OS on a different drive and made junction points for "C:\Program Files" on the 9GB drive to a different 9GB hard drive. It worked, but it was a horrible hack. This is a bit more elegant.
The day my house has a dedicated SAN is the day when I know I've gone too far. Although, I do have a gigabit switch and iSCSI is very affordable these days. You never know.