Move existing disk image using MS sysprep tool
If you have an existing PC and wish to keep it intact but on a new system, I think the best way to do it is to either physically transfer the hard drive or an image of the original hard drive after using Microsoft's sysprep tool. Sysprep is a utility provided in Microsoft's Server Resource kit for various NT operating systems, including Windows 2000, Windows 2003, and Windows XP. It is available on-line and there are many Knowledge Base articles on using it to deploy Microsoft operating systems. It was designed to provide a large-scaled deployment of a standard disk image, but I've used it at home to take an existing system and upgrade the computer hardware so the old drive information will accept the new hardware changes.
How does it work? Executing sysprep on a hard drive will strip the system of the hardware dependent drivers and put the operating system in a new discovery mode. Once the disk is restarted in a new hardware environment, a sysprepped disk will look to discover all the hardware. As many who have tried before know, if you transfer a hard drive from one computer into another computer with decidedly different hardware components, there is a good chance the system won't boot. Sysprep will take care of removing the drivers that could make a system start fail.
There are some limitations using this method. If your system has a long history of installations and program removals, it doesn't replace starting over with a new system and replacing the programs for removing the excess gunk that the system has accummulated over time. Also, the processors should be of the same HAL on the two machines; usually not a problem, but you can't do a single processor to dual processor change without changing the HAL (there are some advanced techniques to do this - read the KB's).
But, all in all, this is the cleanest, safest, and fastest method to move everything from machine A to machine B. Look into it the next time you want to move contents to new hardware.