OOBE generalize; is the best way to go!
THAT SAID.. ( it can take quite some time, and if u wish to retain your user accounts OOBE can give you issues, )
(If and only if you have done a full disk backup to an external source, like an external hdd or networked Computer or even to the cloud... Then you have nothing to lose trying the following)
(Also consider that most cloning software have very helpful tools, AOMEI Backupper has always served me very well.. )
At very least you can try this before you remove the hard drive from the old system:
Reboot the old system into safemode; (there are several ways to get into safemode depending on your OS and version, just google it) Once in safemode right click the start menu and select the "Run" dialog box; type "msconfig" & hit enter. Once msconfig has loaded select the "boot" tab; and select "boot to safemode with networking".
Now the next time that you boot the hdd (after you move it to the new system) This should alow windows to pick-up the new chipset and smbios drivers as well as some other new hardware components and what not.
So that’s it.... Just make sure it will boot to safemode on the first boot in the new system and windows should automatically do the rest...
Be sure to remember that you'll need to let the new system load the OS in safemode and run for a few minutes. Then you'll need to re-run the msconfig command again; going back to the boot tab; and this time unchecking the box for boot to safemode!
You really shouldn't have to run the bootrec commands; so long as the only drive that was still marked active in the old (non uefi) system was the OS hdd. As long as you plan for that to be the only OS hdd attached to the new system?
In my experience, It is best when moving a hdd; to only attach the new hdd by itself to the sata controllers of the motherboard of the new system.
You'll have less boot options to worry about this way and generally speaking you'll have less chance of corrupting other HDDs that have data you care about on them. (Although; you can leave the other hdds attached if you chose.)
A few considerations to take into account:
Are you moving the hdd from an Intel platform to an Intel platform? (Going between AMD and Intel is going to be hard and questionable at best.)
What was the old system bios previously set to? AHCI mode, IDE mode, or Raid mode?
Are you going to be running in the same mode on the new system? (There are workarounds for these scenarios: but I don't recommend them.)
Is the new system a bios mainboard? Or a UEFI bios without a csm? (Most newer motherboards are UEFI bios based and have CSM options for legacy equipment.)
Can the new system boot to MBR disks or is it set to only run the os from a GTP partitioned disk? (In most cases MBR will work fine but remember that using GPT has its benefits. Using an SSD partitioned as GPT with a UEFI setup will offer quicker resume and boot times.)
Is the HDD formatted as fat32; or NTFS? (For EFI setups boot media needs to be gpt partition scheme. That means you'll be able to see 4 partitions minimum from the disk management console or in diskpart using the list disk option.
Partition EFI (fat32), Partition MSR, Partition Primary "C:" (probably NTFS), & Partition Recovery.
If you want to, then add a hibernation partition equal to the amount of system RAM.
Windows does almost all of this by default if you boot to installation media in EFI mode.
If you want a Hibernation Partition because you plan to take advantage of Intel rapid start, you will need to shrink the C: partition. Shrink it the by the same amount as the amount of installed system memory after the OS is installed. Then you'll create the hibernation partition to be of the same size that you shrank C: partition
I only mentioned all this because if you’re having to reinstall the OS each time anyways you should make sure your getting all the performance that you loss when the factory setup gets formatted... if you google search diskpart it will give you some basic ideas of how to use it.
For EFI setups the equivalent command to bootrec is; bcdboot...
In most cases you can do this like so... "bcdboot.exe c:\windows /f z: /s all" that will load both EFI and MBR boot codes to the fat32 file system partition so your system can boot in bios or in EFI mode.
If you still have any issues moving the hdd...
It is truly easy THESE DAYS to make a bootable USB Flashdrive. Just use a USB drive that is about 4GBs or more.
Do a google search for RUFUS and go to their website. It's safe.. It’s easy,, It's free..
Download the .exe (it’s a tiny tool, around 10mb I believe. They even have a portable version. No install required.) It will erase the USB drive so take the usual precautions here, and back it up first if you have things that you care about on it……
1. Just connect the usb drive to your working PC.
2.Run the Rufus program.
3.Select the correct usb drive. (most likely the only option)
4.Select the disk image or iso. (Chose the iso for the version of windows that you want to have as installation media on your usb drive)
5.Click Start. (burn)
6.Wait for it to say that its done or "Finished" at the bottom.
7.Safely eject the usb stick.
8.Insert the USB install media into the other system.
9.At boot-up hold down the f8 or f10 key ( chose the appropriate f# key for your manufacturer.) So that you get to the boot options screen.
10.Select boot to USB. (the name of your usb drive). Then push the “any key” when it asks if you want to boot to the usb.
11.Install windows as usual on that system without a dvd drive installed.....