View Categories

Windows Update Stuck — Fix Download or Install Loops

2 min read

Overview #

If your Windows Update freezes at “Checking for updates,” “Downloading,” or “Installing,” you’re not alone. This issue usually stems from corrupted update cache files, stalled background services, or misconfigured system components.
This step-by-step guide walks you through diagnosing and resolving update loops using built-in tools — no third-party software required.

What you’ll learn

  • How to identify what’s causing an update to hang
  • How to clear Windows Update’s temporary cache
  • How to restart core update services
  • How to re-register the Windows Update Agent

Estimated time: 15–30 minutes
Skill level: Intermediate


Terms and Definitions #

TermMeaning
Windows Update Service (wuauserv)The background service that downloads and installs updates
SoftwareDistribution folderDirectory that stores temporary update files
BITS (Background Intelligent Transfer Service)Moves update files in the background while Windows is running
WSUS / Windows Update AgentThe system process that manages and authenticates updates
Servicing StackThe Windows component responsible for installing cumulative updates

Steps #

Step 1 — Check for Active Update Processes #

First, determine if the system is truly frozen or just slow.

PowerShell

Get-WmiObject Win32_Process | Where-Object {$_.Name -like "*wuauclt*" -or $_.Name -like "*svchost*"} | Select-Object Name, ProcessId

If you see “wuauclt.exe” or “svchost.exe” running and consuming CPU/disk in Task Manager, the update process may still be active — allow 10–15 minutes.

If nothing changes after that period, proceed to reset.


Step 2 — Stop the Update Services #

PowerShell

Stop-Service wuauserv -Force
Stop-Service bits -Force
Stop-Service cryptSvc -Force
Stop-Service msiserver -Force

These four services manage updates, encryption, and installations.
Stopping them ensures no update processes are locked during cleanup.


Step 3 — Clear the Windows Update Cache #

The cache folder often stores partial or corrupted downloads.

PowerShell

Remove-Item -Recurse -Force "C:\Windows\SoftwareDistribution"
Remove-Item -Recurse -Force "C:\Windows\System32\catroot2"

These folders will automatically regenerate when services restart.


Step 4 — Restart the Services #

PowerShell

Start-Service wuauserv
Start-Service bits
Start-Service cryptSvc
Start-Service msiserver

Then manually check for updates again:

usoclient StartScan

If the scan works normally and progress resumes, you’ve fixed the corruption issue.


Step 5 — Run Windows Update Troubleshooter #

  1. Open Settings → System → Troubleshoot → Other Troubleshooters.
  2. Under Windows Update, click Run.
    This built-in tool re-registers update components and checks for permission issues.

PowerShell alternative

msdt.exe /id WindowsUpdateDiagnostic

Step 6 — Check System Integrity #

PowerShell

sfc /scannow

This command verifies all protected system files.
If corruption is found, Windows will repair automatically.

Then check component store health:

DISM /Online /Cleanup-Image /RestoreHealth

This uses Windows Update sources to repair deeper servicing stack problems.


Step 7 — Restart and Test #

After the repair commands complete:

  1. Reboot your system.
  2. Go to Settings → Windows Update → Check for updates.
  3. Watch for progress beyond where it previously stalled.

If the update now downloads or installs normally, the cache reset worked.


Step 8 — (Optional) Reset Windows Update Components Manually #

If updates still fail to install, re-register the update DLL files:

regsvr32 /s wuaueng.dll
regsvr32 /s wups2.dll
regsvr32 /s wuapi.dll
regsvr32 /s wups.dll
regsvr32 /s wucltux.dll
regsvr32 /s wuwebv.dll

Then restart again.


Step 9 — macOS Users (Cross-Reference) #

If you’re troubleshooting macOS updates instead, use Terminal:

softwareupdate -l
softwareupdate -i -a

To clear update metadata:

sudo rm -rf /Library/Updates/*

Then rerun updates.
(Mac users typically face fewer update “loops,” but failed cache writes can occur on older Intel models.)


Verification #

CheckCommandExpected Result
Services statusGet-Service wuauserv, bitsRunning
System healthsfc /scannow“No integrity violations found”
Component storeDISM /Online /Cleanup-Image /CheckHealthHealthy
Update testusoclient StartScanUpdate resumes normally

Conclusion #

When Windows Update hangs, the issue almost always lies in corrupted cache data or stalled services, not the updates themselves.
By stopping update services, clearing cache folders, and repairing the component store, you can almost always restore update functionality without reinstalling Windows.
If updates still refuse to apply after these steps, download the latest cumulative update manually from the Microsoft Update Catalog and install it directly.

Powered by BetterDocs

Leave a Reply

Your email address will not be published. Required fields are marked *