The transition from Intel to Apple Silicon Macs has gone smoothly for most software, thanks to the Rosetta 2 compatibility software and app developers who have quickly added Apple Silicon support to their software. But the ability to run Windows and Windows apps, either directly on the hardware via Boot Camp or via a virtual machine, still isn’t officially supported.
But makers of paid virtualization software have been working to close that gap. Parallels Desktop 17 will run the Arm version of Windows 11 inside a virtual machine, and yesterday VMware released a beta version of VMware Fusion 12 that can do the same thing.
VMware’s blog post details some of the changes they’ve made to support Windows 11, many of which parallel the work that Parallels has done. To meet Windows 11’s TPM requirement, the software creates an encrypted file that is used to store the same kinds of data that an actual TPM would store on a real PC. VMware also includes a basic 2D graphics driver so that the Windows desktop can be rendered properly on high-resolution displays, plus a basic networking driver.
Virtualizing the Arm version of Windows still isn’t officially supported by Microsoft. The company only licenses the Arm version of Windows to PC makers who are building PCs with Arm processors. This means jumping through lots of extra hoops to get Windows installed in VMware Fusion in the first place, since you can’t simply download an ISO file as you can for the x86 version of Windows. You need to download a Hyper-V disk image of a Windows 11 beta build from Microsoft’s Windows Insider site, convert the .VHDX file to a VMware-compatible VMDK file using separately downloaded Qemu software, create a virtual machine using that disk file, and then continue to install new beta builds as they’re available so that the build you’re using doesn’t expire.
VMware provides some basic documentation for testers hoping to kick the tires of this new build, but it’s worth noting that Parallels can at least offer to download Windows for you automatically.
Running the Arm version of Windows will let you run most non-3D Windows apps, regardless of whether they were written to run on Arm or x86 processors. Windows includes its own Rosetta-like x86-to-Arm translation, and Windows 11 improved it by allowing it to run 64-bit x86 apps and by letting developers ship apps that use a mix of Arm and x86 code. This is a bit more flexibility than Mac developers have—if a Mac app has any x86-only dependencies or plugins that needs to be run within the host process, the whole app needs to be started in x86 mode, even if the rest of the app is Apple Silicon-native.
In recent macOS versions, Apple has been building its own virtualization framework, and independent developers have used it to create lightweight, free virtualization software without the cost or complexity of Parallels or VMware. But it doesn’t officially support Windows in any capacity—on Apple Silicon Macs, it supports macOS and Linux VMs.