I know that this is a really old question, however, I just wanted to chime in here and say that I recently did this in Windows 7. I had a three year old laptop that my company gave me and had recently done a re-install on it. My company decided to refresh my machine and since I had just recently re-installed Windows, and did not want to install again, I decided to just try swapping the hard drives to see if it worked. As a side note, I created an image of my machine first just in case everything fell apart.
Anyway, the upgrade in hardware was significant. While they were both Intel-based architectures it was a move from an i5 to an i7 and a completely different motherboard. As I said it was a three year difference in machine hardware. In the end, the computer booted up like a champ. Once I booted into the new OS all I needed to do was install new drivers for all of the different components. But after I installed all the new drivers, everything worked as expected.
I should also mention that because it was a company machine with volume licensing I didn't run into any Windows licensing problems. I'm guessing that's because the computer just contacted the licensing server and re-validated itself in the background. Anyway, hopefully this experience helps someone else coming along to this post.
Damn good question. I recall swapping motherboards (or rather the hard drive from one machine to another) with Windows XP and experiencing the BSOD you mention above... I have not had the opportunity to try this with Windows 7 though, so I am quite curious myself. – Breakthrough – 2011-07-06T00:39:44.467
You might (should?) be able to create an image with sysprep and deploy it to the new hardware. – Joe Internet – 2011-07-06T02:20:19.253