I've seen you talk about running Windows on a Mac by dual booting, as well as dual booting Windows 8 alongside Windows 7. But you've also talked about how to run Windows 8 in a virtual machine. If I want to run a second operating system, which is better? Dual booting or virtualizing?
It's not quite a matter of which is "best", but—as is often the case—which is better for your particular needs. Both have pros and cons, but are better suited to specific situations. Here's a quick primer on what each does well, and when you'd be better off using it.
Dual Booting Is Great for Games and Other Long Stints in an Operating System
Dual booting, which involves separating your drive into two sections called partitions, essentially lets you run two operating systems on one computer completely separate from one another. When you turn on your computer, you select which OS to boot into, and you boot into it as if it was the only operating system on the machine. Often you can see your files and data from the other OS, but that OS won't be running—you're running the current OS completely natively on whatever hardware you have.
As such, you're getting the most out of your hardware by dual booting, since neither OS will slow down the other in any way. This is great if you're playing games, since you need all the power you can get, as well as extended work in a given program or OS. If you're editing video, for example, and have to do so on Windows, you're better off dual booting. You'll get the best performance, and you won't miss much since you'll be pretty focused on your work.
The only big downside of dual booting is that you have to restart your computer completely each time you want to switch operating systems, and you can't run them both at once if you want programs from each running together. It also becomes a bit harder to share files between each OS, though you can fix that problem with a few simple drivers.
Virtualization Is Great for Running That One Program, or Testing Out a New OS
Virtualization involves running a program like Virtualbox or Parallels to create an installation of your second OS on a virtual drive. There's no partitioning or drive formatting involved; instead, that installation is stored in a file on your current hard drive, and you can boot up that OS in its own window atop your normal desktop. This way, you can use both operating systems at the same time without rebooting, and do things like share your clipboard contents between each OS.
Virtualization is perfect for those times you need to run one or two resource-light Windows programs in tandem with all your Mac programs, or want to test out a new OS (like the Windows 8 Consumer Preview, or a new distribution of Linux). You don't have to go through the complicated process of partitioning your drive, or deal with rebooting your computer. Lots of virtualization programs, including the ones mentioned above, have "seamless modes" that let you run your virtualized programs on top of your current desktop, without having to deal with a second desktop window taking up space.
The big downside of virtualization is that it's quite a bit slower than dual booting. Because you're sharing your computer's resources between two operating systems at once, neither can take full advantage of your computer's hardware—making this a bad choice for gaming or other resource-intensive tasks. In addition, if your computer isn't blessed with awesome hardware, you might find that even playing around with a second OS can feel pretty sluggish. If you have a nice desktop with lots of RAM, though (I'm talking like 8-12 GB), the experience will probably be more than adequate, if not great.
Many people will tell you that dual booting is better than virtualization, or vice versa, but a lot of it comes down to personal preference. Before I got a powerful enough computer, I rarely if ever virtualized—just because I couldn't stand the slowness. A lot of people hate rebooting more than anything though, so they're willing to put up with a little lag rather than wait a few minutes to boot everything up from scratch. In the end, it comes down to what you're doing, what kind of computer you have, and your own pet peeves with each.
P.S. If you have a particularly sweet dual-OS setup that you use—or additional pros and cons that we didn't mention for either method—share them with us in the comments below.