so it has been a while since I did this, windows 7 and earlier.
But depending on how different each machine is it takes a bit of doing.
The older ones you could add the necessary drivers, but since 7 it started including a lot of drivers.
The only real issue is the boot up. IDE, vs SATA vs SSD's, laptop vs desktop sometimes causes boot issues.
I used to buy them in batches and sometimes windows was stuipid and didn't realize it was a different machine and let it run.
Worst case you have to enter a license key again to get it to register.
Worst case for that is having to call and read off the key and have them read back the key to regsiter.
They usually don't care as long as you have a valid license that didn't come from the internet.
A lot of mine were msdn licenses instead.
Sorry that might have been a bit disjointed.
If the machines are close, but you have say a different video card or different ethernet card you can just add the drivers into the image before blowing it onto another machine.
worst case you have to do the internet register again and put in the different key.