A little over a year ago, I wrote a story comparing the then-current versions of the three major programs for running Windows (and other operating systems) on a Mac: Fusion 2.0, Parallels Desktop 4, and VirtualBox 2. The conclusion of that article wasn't too surprising: Your choice of a virtualization application depends largely on what you want to do with it.
That advice hasn't changed, but the software has. All three programs have been upgraded a full version number. More importantly, all three have acquired some new functionality. So I thought it would be good to revisit the issue and to update my advice, based on reviews of that updated software.
So, before you proceed to read about how they compare, I suggest you first go read my separate reviews of Fusion 3.0.1, Parallels Desktop 5 for Mac (build 9308), and VirtualBox 3.1.2. Those reviews should give you a sense of each program's feature set and its particular strengths and weaknesses. (One thing they won't do is tell you how well each program performs; for more on that, see the "How fast is Windows on a Mac?" feature.)
Also, you can download and try all three programs for free, so you can check my judgments of their merits against your own. Once you're done with those assessments, come back and find out how I think these three apps compare and what each one is best suited to do.
Welcome back. Now that you're more familiar with the individual programs, you can figure out which one will serve you best when you need to run Windows on your Mac.
To help you do so, read the following statements and pick those that describe you best. Below each statement, you'll find my recommendation for the program that'll best meet that need. And remember: You can test that recommendation by downloading a copy of the app and trying it out for free.
I don't have time for this! Just tell me which one is best!
In that case, the answer is, "Take your pick." Sorry to take the easy way out, but it's more-or-less true: All three are perfectly good apps. VirtualBox is the best--meaning the only--solution if you don't want to spend any money and have no need for fancy graphics or gaming; it's slower than the other two and missing some amenities that make the others easier to use. Fusion is the best solution if you need to use many, many different operating systems or if you want a program that's simple to use (but not dumbed down), with the fit-and-finish of a good Mac app. Parallels is best if you want speed and the highest total feature-count; it has both, as well some attendant complexity and an unfinished feel in spots, along with occasionally-risky updates.
I need to run Microsoft's Office in Windows XP Pro or Windows 7.
My advice on this one is basically unchanged from a year ago; what worked then still works now. All three virtualization apps will handle any version of Office just fine. If you're not working with gargantuan, complex Excel models and multi-hundred-megabyte PowerPoint presentations, VirtualBox may be all you need--it handled my basic Office tests without any problems and never felt too slow or overburdened by the workload. As your data models get more complex, you may want to switch to Parallels or Fusion, because they're measurably faster than VirtualBox at most tasks. But for most users, VirtualBox will do just fine as a solution to running the Windows version of Office on their Mac.
If you do choose VirtualBox, however, be warned: It has no "easy install" assistants or automated installation tools for integrating mouse management and screen resizing. It's more complicated to configure shared folders. And it doesn't support features such as drag-and-drop or shared clipboards.
I want the easiest-to-use, most-stable solution that can handle basic office programs.
I find Fusion to be the easiest-to-use of the three programs. It's got a polished feel; while it has plenty of features, they're all relatively easy to find and use. Parallels, by contrast, has more features, but it's harder to find and configure them. Another concern with Parallels is that it defaults to a "fully shared" Windows installation. That is, files and folders are freely shared between Windows and OS X, and the default view mode is Coherence, which intermingles Windows and OS X applications. Fusion, on the other hand, takes a more conservative approach, and doesn't default to a fully shared OS X/Windows setup.
Finally, I find Fusion software updates more reliable; when VMWare releases a new version of the program, I feel confident that update has been well-tested and will work without problems. Parallels updates, on the other hand, seem to have more problems, indicating that they may not have been fully tested prior to release. For example, the latest update to Parallels 5 (build 9310) caused some unexplained oddities in testing; it was actually slower in some tests than the build (9308) we benchmarked for our review. This is not the first time there have been glitches in a Parallels update; if you choose Parallels as your virtualization program, be cautious about installing upgrades.
I have Windows installed via Boot Camp on my Mac; can I use that version of Windows with these programs?
Both Fusion and Parallels can see and use the Boot Camp Windows installation as a virtual machine; VirtualBox doesn't support this feature. I did only limited testing on this--I used Fusion to test the Boot Camp partition on my Mac Pro, and Parallels to test the Boot Camp partition on my MacBook Pro. I didn't experience any problems with either setup. However, some users with Mac Pros and multiple internal drives have reported issues with running Boot Camp.
I didn't focus on Boot Camp support in these reviews and tests because its importance has decreased as the performance of the virtual machines has increased. The people who really need Boot Camp now are those who want to play leading-edge 3D games, who run very CPU- and graphically-intensive applications, or who have a piece of esoteric hardware not supported by the virtualization programs.
For everyone else, I believe the virtual machines provide enough performance now that there's no real need to use Boot Camp.
I need to use a rare and unique hardware peripheral in Windows or Linux. Can you tell me which of these programs will support that hardware in their virtual operating systems?
No, I can't: the world of peripherals is huge, and there's simply no way I could begin to test even a small portion of what's available. I can tell you that I've had no trouble with simple stuff, such as joysticks and gamepads, in either Parallels or Fusion. (Due to VirtualBox's limited gaming support, I didn't test them in VirtualBox.)
Beyond that, though, if you've got a peripheral that absolutely, positively must work in your virtual operating system, I strongly recommend you download and test each of these programs yourself.
I want to play 3D games in Windows.
You'll get the best Windows gaming experience (by far) by installing Apple's Boot Camp, and rebooting into fully-native Windows to play your games. However, that's really not the ideal solution. If you'd rather not reboot to play, Parallels 5 is the new champion--with one possible caveat.
I was amazed at how well Parallels 5 ran an intense newer game such as Call of Duty 4 (albeit with the graphics complexity turned way down), and it had only minor issues with the older games in my test suite. While Fusion was also capable of playing most of those older games too, it did so at a lower frame rate. Additionally, I was unable to coax a decent result out of it while testing Call of Duty 4. (I tested all games using Windows 7 with two CPUs.)
One surprise when I was testing games: Flight Simulator Xran in both Fusion and Parallels--and ran quite well. When it was released a few years ago, Flight Simulator X required what was then a fairly potent Windows machine. Now it can be run within a virtualization application on a Mac, with decent frame rates. That didn't seem possible a year ago.
Here's an example of a landing I--well, the autopilot anyway--made in one of the Flight Simulator X scenarios. Even though this was being recorded in real time by ScreenFlow, the frame rate was quite good, and you can hear the quality of the audio. (The original version is at 1024x768 resolution; I've reduced it to fit here.)
The caveat about Parallels as a gaming platform has to do with image quality. In most of the games I tested, I couldn't see any real difference between the visuals in Fusion and Parallels. When there were exceptions, however, it was Fusion that looked the best.
When playing Half Life 2, for example, the lighting effects were blocky and broken in Parallels; they were smooth in Fusion.
That problem didn't pop up in all games, but when it did, it was distracting. That said, I would still pick Parallels over Fusion for gaming, because of the higher frame rates and its ability to run newer games.
I have a CPU-intensive Windows application that needs every bit of CPU power.
Parallels supports the most virtual CPUs (eight), so it would seem to be the logical choice for CPU-intensive applications. Fusion can actually use more CPU power than OS X assigns it, based on the demand from the virtual machine; When playing back a Windows HD video file on a single CPU Windows machine, for instance, the CPU utilization exceeded 100%. But for now, Fusion is limited to four virtual CPUs (or cores), compared with Parallels' eight.
If you need every last drop of CPU power, I'd recommend that you download and install the programs yourself, to see how well each tackles your particular apps; the performance will vary depending on how those programs are coded and how effectively they use multiple processors.
I want to experiment with a bunch of different operating systems and Web applications.
If you want to experiment with a wide range of operating systems and applications, then Fusion is your best bet (as it was last year). The company's Virtual Appliance Marketplace features over 1,300 bundles containing ready-to-use operating systems, applications, and combinations of both. Many of these are completely free: You download the appliance you want to use, launch Fusion, and point it at the downloaded file; Fusion takes care of the rest. It doesn't get much simpler than that.
Parallels offers appliances, too, but as of this writing, its library contains only 87 titles.
Both VirtualBox and Parallels can import VMware appliances. However, in both programs it takes a bit of effort to import and set up the virtual machine. With Fusion, the process is as easy as downloading and opening the virtual machine you'd like to use.
I want to use a program based on OpenGL in Windows or Linux.
All three virtualization programs offer some form of OpenGL acceleration, but only Parallels offers it in Linux and all recent versions of Windows. Parallels also had the fastest OpenGL acceleration, and did a good job with the visual effects in Ubuntu Linux. Parallels is the clear winner here.
I'd like to run OS X Server in a virtual machine.
Both Parallels and Fusion support virtualized OS X Server installations. I have an evaluation copy of OS X Server here, and was able to install it in both Parallels and Fusion, and get it up and running. However, I'm not a Server expert (more like a rank amateur), so can't evaluate how well the two programs handle it. Your best bet, assuming you know your way around OS X Server, is to download the trial versions of both programs and see how well they work.
I must have native support in the virtual machine for a FireWire device I use every day.
Sorry, but none of the virtualization apps support FireWire directly. You can share files from an OS X-mounted FireWire drive, but you can't connect something like a FireWire scanner directly to a Windows virtual machine. For true FireWire support, you'll need to use Boot Camp. This isn't a limitation of the virtualization apps, but of the FireWire interface itself. (It doesn't allow you to move devices between virtual and real operating systems, as you can do with USB devices.)
I want to watch high definition Windows video files.
Both Parallels and Fusion have made tremendous progress on this in the last year; they both handled my 1080p high definition test file well in all versions of Windows. (I tested playback using full screen viewing mode in Windows 7, and with the video set to play on the full screen.)
I'd be hard pressed to pick a winner here. Fusion used slightly less computing power while providing equally good playback, but both programs are worth considering for HD video playback. VirtualBox still has issues running HD video in anything other than Windows XP Pro.
Note that watching HD video in Coherence or Crystal (Parallels) or Unity (Fusion) modes is possible, but the frame rate may suffer, and I saw some visual artifacts when I tested in Crystal view mode in Parallels.
I want to do everything--run Windows games, experiment with assorted virtual machines, run Office applications, and watch high definition video.