I have a Mac Mini with the original ARM-based M1 chip. Not surprisingly, the first thing I wanted to do on it was to run virtual machines. (You might think the first VM was a Windows VM, but that’s not the case, the first was a Fedora 34 Linux installation. But that’s a separate story.)
Initially, the only option for running virtual machines on M1 Macs was Parallels Desktop, so that’s where I started. VMware then later released a tech preview for their own VMware Fusion software (free while in preview). So what’s the difference? Let’s do a quick comparison.
You typically start off with a virtualization solution by creating a VM, so let’s start there. As there can be a lot of confusion around what you can (ARM64) and can’t (Intel) emulate on an M1 Mac, Parallels needs to start with a screenful of information:
Next, you get a choice of OSes to install. Parallels goes out of its way to show Windows front-and-center, even though Microsoft barely supports this with a VHDX disk image of the latest ARM64 Windows 11 Insider Preview build.
It will even download the Windows 11 VHDX for you:
Nice. To run Windows 11, it does provide the expected virtual TPM 2.0 support, UEFI, Secure Boot, etc. to meet the Windows hardware requirements. And of course it can download and install various flavors of Linux as well.
Once Windows 11 is installed, it will automatically install the Parallels Tools in the VM, to better integrate Windows 11 into your environment. (Notice that my VM is labeled “Windows 10” — that was the current release when I first created the VM, and since it was an insider build, it has since upgraded to Windows 11. The Parallels Tools get updated any time Parallels Desktop gets updated, so I hadn’t started this VM since I last upgraded Parallels.)
How well does it work? I have no complaints — I can do everything I need in the Windows VM, and performance is quite reasonable. (I don’t expect to do any hard-code tasks in the VM, so as long as the VM is reasonably responsive I’m good.)
Configuration options in a VM are pretty much as expected:
As I do a fair amount of work with bare metal imaging (yes, even on ARM64), I always want to see the firmware menus:
Weirdly, even though I can configure the VM to specify that network (PXE) boot should be in the boot order, I can’t get that to show up in the Boot Manager menu. Not sure what’s up with that, but at least you can attach ISOs and capture USB devices so that you can boot from media.
Controlling existing VMs is done via the Control Center:
It’s functional and pretty, and reflects the expected number of VMs that you’re likely to set up — single digits is going to be the norm, so something more visual is appropriate.
What else is there to say? It does the job and does it reasonably well. My only complaint is that I would like to do PXE boot.
One other interesting thing to note: A license for Parallels Desktop also includes Parallels Toolbox, a collection of tools (kind of like “power toys” if you’re familiar with the term on Windows) that can be fairly handy, as well as Parallels Access for remote control. I do find myself using Parallels Access so that I can remotely connect to my M1 Mac via a web page (from Windows or MacOS).
It’s probably not surprising that VMware Fusion would also add support for M1 Macs. While that support didn’t come nearly as fast as Parallels, it is at least here — in tech preview at least. The final release is expected soon, but with that final release comes something that the tech preview doesn’t have: a price tag. So if you want to try out the tech preview version, there’s no risk to do so right now. (Presumably there will be a trial version once the final release comes out.)
Creating a new VM via VMware Fusion is a reasonable process if you’ve got installation ISOs:
And if you specify a custom virtual machine, you’ll see some common options:
Notice anything missing? Yes, that’s right, no mention of Windows anywhere. Since Microsoft hasn’t stated any official support for Windows on M1 Macs, I guess VMware is going to do the same. But it’s not hard to set up a Windows 11 VM, you just need to do the work yourself to download the VHDX disk image and attach it to a new VM.
Also notice that there are no other “helpers” for setting up Linux VMs either. The options above will configure the VM settings appropriately for the OS, but you have to download the installation ISOs yourself. That’s probably not a big deal, but compared to Parallels Desktop, it’s not a simple.
When it comes to configuring VMs, the settings interface looks a little more extensive compared to Parallels:
You might notice one thing missing there though: no TPM 2.0. And that’s not an option that can be added either:
With any luck, that will be added in the released version. Windows 11 RTM will run without it (and won’t complain on VMs), but later Windows 11 releases (e.g. 22H1) will likely complain about this omission.
As expected it does run Windows 11 just fine:
And as with Parallels, performance is just fine; Windows 11 works well. Looking at the firmware menus, they look quite similar:
The machine information at the top of the screen is a little off, but that’s not really an issue and not really surprising for prereleased software; it’s also running prereleased firmware. But if you go into the Boot Manager, you’ll see more options:
Very nice, PXE boot is fully supported by the firmware. (The first entry is for IPv4, the second is for IPv6.) While I’d like to also see HTTP boot support (as you get in Proxmox), I’m probably not normal in that regard. As with Parallels, there is also support for ISOs and USB device capture, which works well.
The last item to look at is the Virtual Machine Library, the VMware equivalent to Parallel’s Control Center:
It supports a little more density than Parallels, with a simple list of VMs on the left and details about those VMs on the right. It’s a UI designed to support larger numbers of VMs. But both are equally functional overall.
So is there a winner? From my perspective, both work very well. I give a slight edge to VMware only because I need PXE boot capabilities. If you want more assistance setting up a new VM, you may like Parallels better.
Now if we could just get Microsoft to sell a copy of Windows 11 for ARM64 to use on this…