Actually with Windows 7 I moved my harddrive from one computer to another and it started up "just fine".
"Just fine" meaning I needed to re-do the activation and I needed to install the new drivers, but Windows 7 has much better hardware management than XP.
Guess the hardware differences matter, I upgraded my AMD processor on my laptop from single core to duel and i needed to redo my OS and It wouldn't work When I went from an AMD to Intel computer
I went from a Lenovo desktop with a Core 2 Duo and GeForce 7200 to a custom machine (ASUS motherboard) with a Core 2 quad and ATI HD 5770, so the only things that stayed relatively the same were the socket/slot type and the processor's major family. Different motherboard, GPU brand/type, processor, but the same type of RAM.
Was your original install a clean one, though? OEM installs tend to fuck with the system in ways they shouldn't.