All programs will have to be installed on the new machine. You can use any convenient storage medium (flash drive, external drive, optical drive, etc.) to transfer files from one machine to another.
You can also to swap hard drives on laptops. Of course, only if they have the same OS.
NO! This is terrible advice. You cannot simply swap hard drives from one machine to another and expect it to work, even if the same OS is installed on both machines.
1. The drivers installed for one machine will not match the other.
2. Windows will recognize that the info about the system, especially the motherboard, do not match and will, at a minimum, require re-activation. This is true even when exchanging hard drives between two otherwise identical machines... IF you can get the network, wireless and any other drivers required just to go online.
In addition, whatever the new machine writes to the transplanted hard drive could cause the original system not to work if you try to re-install it in the original machine.
If you still want to experiment with such a crossbred installation, first, buy a second drive the same size and speed (or bigger and faster), mount it in an external case, and clone your working original installation. If you completely blow off your Windows installation, you can swap the cloned drive into the machine, and it will work.
As a matter of personal security, you'll have a drive you can continue to use to clone future backups. Backing up your files is fine. Having a cloned running backup drive that requires no re-installation is far better.
