Skip to content
daniel@cosenza:~/blog
WindowsFix November 3, 2025 3 min read

Fixing a Windows Update That's Stuck or Failing to Install

Windows Update hangs at a percentage forever, or fails and rolls back every time. A systematic order of fixes, from least to most invasive.

Windows Update hangs indefinitely at some percentage, or downloads and installs an update only to fail and roll back on every attempt. Work through these in order — each is progressively more invasive, and most stuck-update problems resolve well before you need the later steps.

Step 1: confirm it’s actually stuck, not just slow

Some updates (particularly large feature updates) can legitimately sit at a specific percentage for a long time while doing substantial background work. Check the update service’s actual activity before assuming it’s hung:

Get-WinEvent -LogName "Microsoft-Windows-WindowsUpdateClient/Operational" -MaxEvents 20

If this shows recent, ongoing activity, give it more time. If it’s been genuinely flat with no new events for well over an hour on a normal broadband connection, proceed.

Step 2: run the built-in troubleshooter

msdt.exe /id WindowsUpdateDiagnostic

This automated troubleshooter checks for and fixes a range of common, known-quantity issues (corrupted update components, stuck services) without needing manual diagnosis.

Step 3: restart the Windows Update services and clear the download cache

A corrupted partially-downloaded update is one of the most common causes of a repeatedly-failing install. Stop the relevant services, clear the cache folder, and restart:

Stop-Service -Name wuauserv, bits, cryptsvc -Force
Rename-Item -Path C:\Windows\SoftwareDistribution -NewName SoftwareDistribution.old
Start-Service -Name wuauserv, bits, cryptsvc

This forces Windows Update to re-download everything from scratch rather than continuing to retry a possibly-corrupted partial download.

Step 4: run the System File Checker and DISM

If the failure recurs after a clean redownload, corrupted system files themselves might be the cause:

sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth

DISM /RestoreHealth repairs the underlying Windows component store that sfc itself relies on — worth running even if sfc reports no issues, since a damaged component store can cause sfc to be unable to fix things it would otherwise catch.

Step 5: check for a specific incompatible driver or application

Some update failures are caused by a specific installed driver or application Windows’ compatibility checks have flagged. Check the update’s specific error code against Microsoft’s documentation:

Get-WinEvent -LogName System -FilterXPath "*[System[(EventID=20 or EventID=24 or EventID=25)]]" -MaxEvents 10

These event IDs specifically relate to update installation failures and often include the exact error code needed to look up the specific known cause.

Step 6: try installing via the standalone installer

If Windows Update itself keeps failing, downloading the specific update’s standalone .msu package directly from the Microsoft Update Catalog and installing it manually bypasses whatever is wrong with the normal Windows Update pipeline:

wusa.exe C:\Downloads\windows10.0-kbXXXXXXX.msu

Step 7: last resort — the in-place upgrade repair

If nothing else works and the system remains stuck on an outdated, unpatched version, running an in-place upgrade using the Media Creation Tool (choosing “keep files and apps”) repairs the OS installation using fresh files without a full wipe-and-reinstall.

Why working through this order matters

Each step addresses a progressively less common cause — most stuck updates are simply a corrupted partial download (step 3), a smaller number are genuine system file corruption (step 4), and true reinstall-level fixes (step 7) are rarely actually necessary. Jumping straight to a full reinstall skips fixes that would have resolved the problem in a few minutes with no data risk at all.