WSL Install Fails: The Fix That Actually Works
WSL fails to install because the Virtual Machine Platform isn't on. Turn it on in Windows Features. That's it 90% of the time.
The 30-Second Fix: Turn On Virtual Machine Platform
What's happening here is Windows needs the Virtual Machine Platform to run WSL 2. Without it, the Linux kernel can't start. You get that 0x800701bc error right after the install looks like it succeeded.
- Open Control Panel → Programs → Turn Windows features on or off.
- Find Virtual Machine Platform in the list. Check the box.
- Also check Windows Subsystem for Linux if it's not already checked.
- Click OK. Windows will install the needed files. Restart your machine when it asks.
After reboot, open PowerShell as admin and run wsl --set-default-version 2 then wsl --install -d Ubuntu. I've seen this fix work on Windows 10 version 2004 and newer, also Windows 11. The reason step 3 works is because WSL 2 needs the Hyper-V virtualization stack, even if you never use Hyper-V. The Virtual Machine Platform is a stripped-down version of Hyper-V that WSL 2 requires.
If you're on Windows 10 version 1909 or older, you might not even have the Virtual Machine Platform option. In that case, skip to the advanced fix below.
The 5-Minute Fix: Enable WSL with One Command
Sometimes the GUI checkboxes don't stick. Or Windows Update hasn't pulled the right packages. Run this in PowerShell as admin:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Restart-ComputerWhat DISM does here is force-enable the feature at the OS level, bypassing the GUI. The /all flag also enables parent features that might be missing. After restart, verify with:
wsl --statusYou should see WSL version 2 as default. If you still get the 0x800701bc error after this, the problem is almost certainly your BIOS settings or an old Windows build.
Check Windows Build Number
Press Win + R, type winver. You need build 19041 or higher for WSL 2. If you're on an older build like 18362, WSL 1 will work but not WSL 2. In that case, either update Windows or use wsl --set-version Ubuntu 1 to force WSL 1 mode. WSL 1 doesn't need Virtual Machine Platform, but it's slower and has compatibility issues. I'd avoid this unless you're stuck on an old corporate image.
The 15-Minute Advanced Fix: BIOS Virtualization and Kernel Update
If the above didn't work, something deeper is blocking virtualization. This happens most often on Dell or HP business laptops where virtualization is turned off in BIOS. Or you have third-party antivirus that blocks Hyper-V.
Step 1: Check Virtualization in Task Manager
Open Task Manager (Ctrl + Shift + Esc), go to the Performance tab, click on CPU. Look at the bottom right: it says Virtualization: Enabled or Disabled. If disabled, you need to enter BIOS.
Step 2: Enable Virtualization in BIOS
Restart your PC and spam F2 (or Del, F10, depending on your motherboard). Look for a setting called Intel Virtualization Technology (VT-x) or AMD SVM. Enable it. Save and exit. This is the security feature that lets your CPU run virtual machines. On Dell systems, it's under Virtualization Support → Enable Intel Virtualization Technology. On Lenovo, it's Config → CPU → Intel Virtualization Technology.
Step 3: Manually Install the WSL 2 Linux Kernel
Microsoft ships the kernel as a separate update package. Sometimes it doesn't install with the feature. Download the WSL2 Linux kernel update package for x64 machines from Microsoft's official site. Run the MSI. It's a one-click install. This package contains the actual Linux kernel that WSL 2 boots into.
Step 4: Disable Third-Party Antivirus Temporarily
I've seen McAfee and Sophos block WSL from starting. The symptoms: WSL installs fine, but when you try to launch Ubuntu, it hangs or gives a generic error. Disable real-time scanning in your antivirus for 5 minutes and test wsl again. If it works, add an exception for C:\Windows\System32\wsl.exe and C:\Users\{yourname}\AppData\Local\Packages\CanonicalGroupLimited*.
When Nothing Works: The Nuclear Option
Rarely — maybe 1 in 50 cases — the WSL installation is corrupted. You can nuke it and start clean. Run in PowerShell as admin:
wsl --unregister Ubuntu
wsl --shutdown
# Remove all WSL packages
Get-AppxPackage *MicrosoftCorporationII.WindowsSubsystemForLinux* | Remove-AppxPackage
# Reboot, then reinstall
wsl --install -d UbuntuThis removes the app package entirely. After reboot, Windows will download a fresh copy from the Microsoft Store. The key here is the Remove-AppxPackage step — most people skip it and wonder why the problem persists.
Why This Error Exists
Microsoft changed the WSL architecture between Windows 10 version 1909 and 2004. Older builds used a different kernel delivery mechanism. If you're on an older build, the Virtual Machine Platform checkbox might be missing entirely. In that case, you have two choices: update Windows to build 19041+, or use WSL 1. WSL 1 works on builds as old as 16299 (Fall Creators Update). To use WSL 1, run wsl --set-version Ubuntu 1 after install. It won't use virtualization, so no BIOS settings needed. But Docker Desktop won't work with it, and file system performance is worse. If you can update Windows, do that.
One last thing: if you're on Windows 11, you might see a different error — 0x80370102. That's also the Virtual Machine Platform missing, or your BIOS has Secure Boot turned on without the proper certificates. Same fixes apply. Start with the first fix.
Was this solution helpful?