
The images created can be transferred to a partition that has the same or grater size, on any disk, or can be backed up to optical media. It's the first thing I do when friends come to me with what has symptoms of an agonizing hard disk.
The time it takes doesn't matter, because it's unattended.
With Linux on the receiving side, the tools in gparted live (and other migration and recovry live CDs) will let you transfer an image of the old disk to the receiving end through the network. My last computer upgrade was to Linux as base OS, and everything (WinXP included) works as I want it. Why not a virtualized Linux? Because some of the tasks require more low level access to the hardware. Experimentation is a good enough excuse, but a more urgent one is that the tools for replication, redundancy, backup, translation, and transformation are readily available in Linux, and they are free. A new computer is a good opportunity to reserve a partition for Linux. I was going to write the steps (I did it once), but I don't remember them exactly, and I have no notes (if I had them, they would be for a new system that boots to Linux). With gparted you can transfer an image of the old disk to the new one, and then transfer that image to a VirtualBox virtual disk. To answer your question, the tools you need are gparted and VirtualBox. I also agree that is time to leave WinXP behind, at least as the main OS.
The new hard disk will likely have double or more capacity than the previous one, so I agree with the recommendation of doing a clean install, and copying the complete contents of the old disc to a directory in the new one.
What if your current hard disk got trashed or stolen? During a move to clean you'll find out about the installation CDs that got lost or damaged, the software that has been deprecated, and other quirks in your setup. A new computer means a great opportunity to verify that your work environment is reproducible.