My ideal situation is to be able to move from machine to machine (XP or Linux) by inserting a reasonably sized usb-drive, type a couple of commands and start working productively.
Read it here
The reason I haven't done this before is because I haven't had a spare machine that I could actually use from day to day – I have lots of old machines but I'm not actually going to use them as a desktop. Moving on your one and only high-spec machine would kill productivity absolutely.
I made a move from my home XP machine to an fresh work XP install first – and that's not particularly easy. The move was easier as I use gmail, google reader and del.icio.us. The latest test release of Ubuntu has NTFS (rw) enabled by default so it's easy to work with XP from Linux.