Your complete guide to the Windows Package Manager works on Windows 10, Windows 11, Windows Server 2019, and Windows Server 2022.
The Windows Package Manager, commonly known as winget, has quickly become one of the most powerful tools for developers, system administrators, and power users. It enables you to install, upgrade, and manage software using simple command-line instructions. Previously, Chocolatey was the most used package manage for Windows especially for automated builds such as those run with Ansible.
If you’ve landed here, it’s probably because winget does not come preinstalled on your system especially if you’re using Windows Server 2022, Windows Server 2019, LTSC builds, or fully-stripped corporate images.
This guide will show you exactly how to install winget manually using proven steps, followed by examples on how to use winget once installed.
What Is Winget?
Winget is Microsoft’s official Windows Package Manager, offering an easy way to install software from the command line. Instead of downloading .exe files manually, you can run commands like:
winget install google.chrome
winget upgrade --all
winget search vscode
This makes software deployment faster, cleaner, and script-friendly perfect for automation, CI/CD pipelines, or enterprise server environments.
Why Winget Is Not Preinstalled on Some System
Winget was introduced in May 2020, with its first stable release (version 1.0) arriving on May 27, 2021. Early preview builds were published on GitHub as part of Microsoft’s open-source development process. Because many Windows builds released before this timeframe did not include winget, these systems typically require a manual installation.
You may need to manually install winget if you are using:
- Windows Server 2022
- Windows Server 2019
- Windows 10 LTSC
- Windows 10 before build 1809
- Environments where Microsoft Store is disabled
- Hardened enterprise images without AppInstaller
If this sounds like your setup, follow the steps below.
How to Install Winget (Windows Package Manager) Manually
The following method is confirmed to work on Windows 10, Windows 11, Windows Server 2019, and Windows Server 2022.
You’ll install the required dependencies, then add the Winget App Installer package manually.
Step 1: Download the Winget Dependency Package
Download the dependencies zip file from Microsoft’s official GitHub:
Unzip the file, open PowerShell, and browse into the extracted directory.
Example:
cd C:\Users\Administrator\Downloads\DesktopAppInstaller_Dependencies
Step 2: Install the Required Appx Packages
Run the following commands in PowerShell:
Add-AppxPackage .\Microsoft.VCLibs.140.00.UWPDesktop_14.0.33728.0_x64.appx
Add-AppxPackage .\Microsoft.VCLibs.140.00_14.0.33519.0_x64.appx
Add-AppxPackage .\Microsoft.WindowsAppRuntime.1.8_8000.616.304.0_x64.appx
These packages provide essential runtime components needed for winget.
Step 3: Download the Winget Installer & License Files
Download the two required files below:
Winget Installer (AppInstaller)
Winget License File
Save both files in the same folder.
Step 4: Install Winget Using Add-AppxProvisionedPackage
Open PowerShell in the download directory and run:
Add-AppxProvisionedPackage -Online `
-PackagePath .\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle `
-LicensePath .\e53e159d00e04f729cc2180cffd1c02e_License1.xml
This installs winget system-wide for all users.
Verify Installation
Run:
winget --version
If everything is correct, you should see something like:
v1.12.350
Winget is now installed and ready to use!
How to Use Winget (Quick Start Guide)
Now that winget is installed, here are essential commands you will use daily.
Search for Software
winget search firefox
Install Software
winget install vscode
Upgrade All Installed Apps
winget upgrade --all
List All Installed Packages
winget list
Uninstall an Application
winget uninstall zoom
These commands work in PowerShell, Windows Terminal, or CMD.
Winget + PowerShell Automation Example
Here’s how you can use winget in scripts:
$apps = @(
"git.git",
"google.chrome",
"microsoft.visualstudiocode"
)
foreach ($app in $apps) {
winget install $app --silent --accept-source-agreements --accept-package-agreements
}
Perfect for DSC, Packer builds, CI/CD pipelines, and server automation.
Conclusion
Winget is one of the most useful tools Microsoft has ever released for Windows administrators, developers, and power users. Even if your system does not include it by default especially on Windows Server 2022 you can manually install it using the steps above.
Once installed, you can:
- Automate software installation
- Build clean and consistent server images
- Keep applications up to date
- Eliminate manual installers forever
If you’re serious about automation, DevOps, or Windows administration, learning how to use winget is an absolute must.