Fixing WinGet on Windows: Update, Repair, and Troubleshooting
WinGet (Windows Package Manager) is Microsoft’s official command-line package manager for Windows. It lets developers search, install, upgrade, and manage applications directly from the terminal.
WinGet can still become outdated, stop responding, or crash during package searches and installations. This guide covers how to diagnose and repair the most common issues on Windows 10 and Windows 11.
1. Check the installed version
Open Command Prompt or PowerShell and run:
winget --version
An outdated version can cause compatibility issues, unexpected behavior, or crashes. For example, an older installation might report:
v1.2.10691
2. Identify the problem
Try searching for a package:
winget search Rustup
If the command produces no output, freezes, or exits unexpectedly, check its exit code:
echo $LASTEXITCODE
For example:
-1073741819
This corresponds to Windows exception code 0xC0000005 (access violation), meaning the process hit an invalid memory access.
3. Check WinGet sources
WinGet uses package sources to discover available applications.
List the configured sources:
winget source list
Update them:
winget source update
If the Microsoft Store source requires agreement acceptance, review the terms shown and accept them if you agree.
4. Update WinGet (recommended)
WinGet is distributed through Microsoft’s App Installer package.
- Open the App Installer page in the Microsoft Store.
- Click Update if one is available.
- Wait for the installation to finish.
- Close and reopen your terminal.
Check the version again:
winget --version
An updated installation should report a newer version.
5. Repair WinGet with PowerShell
If updating App Installer doesn’t resolve the issue, use Microsoft’s WinGet repair mechanism.
Open PowerShell as Administrator, then install the NuGet package provider:
Install-PackageProvider -Name NuGet -Force
Install the WinGet PowerShell module:
Install-Module -Name Microsoft.WinGet.Client -Force -Repository PSGallery
Repair the package manager:
Repair-WinGetPackageManager -Force -Latest
Restart your terminal after the repair finishes.
6. Verify the installation
winget --version
winget source list
winget search Rustup
If package search works and returns results, WinGet is operational again.
7. Install applications
With WinGet working, you can install applications directly from the terminal. For example, install Rustup:
winget install --id Rustlang.Rustup --exact
Verify Rust:
rustup --version
rustc --version
cargo --version
Troubleshooting summary
| Problem | Recommended solution |
|---|---|
| Old WinGet version | Update App Installer |
| Search returns no results | Check and update sources |
| WinGet crashes | Update App Installer and inspect the exit code |
| Installation fails | Check package availability and installer logs |
| WinGet remains broken | Run the PowerShell repair procedure |
Official resources
- WinGet documentation
- WinGet GitHub repository
- Microsoft Store — App Installer
- Microsoft.WinGet.Client PowerShell module
Keeping App Installer updated and knowing the repair steps saves real time when setting up development environments and managing dependencies. If WinGet stops working, start by checking its version, updating App Installer, and running the PowerShell repair before falling back to manual installations.