Hello and welcome to my User Tip
I wrote this because we get a lot of questions what would be the best way to run Windows on a Mac.
If one PC program or so, you can check if it will run well in the program called Wine, but it might be a hassle and problematic.
If one PC program or so, you can check if it will run fine in the program called Codeweavers, but it might be a hassle and problematic.
You can run a paid commercial virtual machine program (Parallels or VMFusion) that runs Windows/Linux and some OS X versions in a window in OS X, the updates are paid some are more frequent, but it gives more features (copy BootCamp partition to use as a vm for instance) and ease to install. Easy to revert to earlier snapshots of the guest OS. Have to purchase a copy of Windows.
You can run a free virtual machine program (VirtualBox) which will do the job like the commercial ones do (revert snapshots too), but isn't as feature rich, but it is supported in older OS X versions a lot longer than the commercial versions and it is free, so it only nags to update.
You can run Windows in Apple's BootCamp, which partitions the boot drive and you install Windows in there, which gives the best hardware performance as one directly boots into Windows, but you can't use Windows System Restore or other disk/backup utilities but there is WinClone which clones it from OS X to restore later.
BootCamp - Pro's
Full access to the hardware for 3D games and heavier CPU needs
Can run on less powerful Mac hardware
Free, included with all new Mac's.
Easy Mac like setup for BootCamp partition
BootCamp - Con's
More "geekier" requires more computer knowledge and skills.
Have to boot into OS X or Windows at start time by holding the option key down (to switch if other is set to start first)
Get's malware like a PC, hard to eradicate, may affect OS X
Have to use WinClone to make backups
Have to keep OS X partition on the drive for updates, firmware, repairs.
Harder to fix and repair than a generic PC which third party Windows software designed for
Only supports Windows 7 (recent OS X version supports Windows 8 also.)
Issues with partitioning with bad sectors and/or data on the lower part of the drive
There are plenty of videos on YouTube showing the install method too.
Backing up BootCamped Windows: For cloning/backing up Windows in BootCamp, search for "WinClone" on MacUpdate.com, runs in OS X.
For bad sector issues and failing to partition: on hard drives, (SSD's not affected). Quit Bootcamp and use Disk Utility from the OS X install Disk or via Recovery HD (hold command r at boot) to Repair the drive two times to make sure.
Then reboot normally and then use Disk Utitity > Erase Free Space > Zero option (not Erase w/Security Option > Zero) and on 10.7 or later "Zero" in Disk Utility is the slider selection #2 (one space to the right) and make sure it's Erase FREE space only on the Macintosh HD partition only.
Once that's finished, quit and try partitioning BootCamp in the BootCamp Utility again.
Can't parititon/move files issue: For data on the lower part of the hard drive (not SSD's) that inhibits the creation/size of the BootCamp partition, requires backing up User data, cloning OS X partition off to a external drive, erasing the OS X internal drive partition of data and reverse cloning the OS X data back on.
Virtual Machine software - Pro's
Runs guest OS in a window on OS X, more friendly to new users and those not sure yet.
Easy to switch from OS X to Windows to Linux back and forth, as many operating systems as your RAM can support.
Commercial versions of VM software can copy presently installed BootCamp and use that Windows in OS X for best of both BootCamp AND virtual machine versions.
Easier to use, "snapshots" of Guest OS state can be reverted back to in seconds for updates/malware issues.
Runs most any OS version, Windows XP, Vista, 7, 8, Linux's, OS X Server editions only (VMed Lion in Lion, ok)
Run more than one Guest OS at a time with enough RAM and drive space
Easier to use for most lightweight guest OS programs, no need to dual boot, run guest OS like a file in a program.
Some integration possibilities, copy and paste, shared folders etc between the two or more OS's
Easier to get out of trouble via the virtual machine software or OS X "Force Quit"
Virtual Machine software - Con's
Guest OS doesn't have access to the hardware, no Direct X, 3D animation limited /slowed apx 1/5th speed as native boot, really only shows on 3D games etc.
Requires more RAM, more powerful machine: 4+ cores, 4GB+ RAM, dedicated video card preferred. (2 cores 2GB RAM possible but not recommended)
Have to share RAM and cores with OS X
Can't run OS X client versions (except Lion in Lion) as Apple asked them not too.
Note: I scaled the virtual machines windows down for effect, they can be full size or larger
More advice in this User Tip here