I just completed a migration from an old PC to a new, much faster PC. Normally, I should have been scared of the amount of work involved in such activity. But it went very smoothly and took only a couple of minutes, believe it or not! For the OS, I use Xubuntu Linux 12.04LTS, a lightweight Ubuntu.
In my wildest dreams, I was hoping that just transferring the IDE Hard Disk Drive from one desktop PC to the other would be all that is required. Well, it was a dream-come-true. I had read on some forums that transferring only the HDD would likely work. So I took the HDD from my Pentium III machine and plugged it up into my Core2 Duo - based PC. Powered up, and BINGO! The machine booted up fine and everything came up functional. Wow! Just try this on any Windows-based PC, you are in for quite a ride!
As far as I am concerned, this is another good reason to use Linux. It says a lot about how modular and complete the Linux kernel is. All required drivers are included into the delivered kernel. All the hardware gets detected again and the proper driver is loaded up every time the PC boots up. I must say I am not using any fancy gamer's graphics card, but the newer machine has a dual-monitor output.
What is your experience with migrating from one PC to another?