Windows Update getting stuck is one of the most common Windows headaches. Whether it's frozen at 0%, creeping past 35%, or locked at 100% for hours, this guide has the fix.
The built-in troubleshooter fixes the most common Update service issues automatically.
Command Line Method (PowerShell):
Get-WindowsUpdateLog -FilePath C:\WindowsUpdate.log Start-MpWDOScan -ScanType UpdateTroubleshooter
Alternative via Control Panel:
msdt.exe /id WindowsUpdateDiagnosticservices.msc, press Enter.Command Line Service Management:
# Stop Update services net stop wuauserv net stop bits net stop cryptSvc net stop msiserver # Start Update services net start wuauserv net start bits net start cryptSvc net start msiserver # Check service status sc query wuauserv sc query bits
Corrupted downloaded update files are a top cause of stuck updates. Clearing the cache forces Windows to re-download clean files.
net stop wuauservnet stop bitsdel /f /s /q C:\Windows\SoftwareDistribution\Download\*net start wuauservnet start bitsIf clearing the cache doesn't help, reset all Update components at once using Command Prompt:
net stop wuauserv net stop cryptSvc net stop bits net stop msiserver ren C:\Windows\SoftwareDistribution SoftwareDistribution.old ren C:\Windows\System32\catroot2 catroot2.old net start wuauserv net start cryptSvc net start bits net start msiserver
Warning: Backup registry first with reg export HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate C:\regbackup.reg
# Reset Windows Update registry keys reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v AccountDomainSid /f reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v PingID /f reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v SusClientId /f # Fix Windows Update authentication reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v DisableWindowsUpdateAccess /t REG_DWORD /d 0 /f # Enable Windows Update logs reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update" /v EnableLogging /t REG_DWORD /d 1 /f # Reset Windows Update policies reg delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /f reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\WindowsUpdate" /f
Use Safe Mode when updates freeze during installation or system won't boot:
bcdedit /set {default} safeboot minimal → RestartIn Safe Mode:
DISM /Online /Cleanup-Image /RestoreHealthsfc /scannowchkdsk C: /f /rC:\Windows\WinSxS\pending.xml if existssfc /scannow — this scans and repairs corrupted system files.DISM /Online /Cleanup-Image /RestoreHealthThis screen appears during the final installation phase and can take 30–60 minutes normally. If it's been over 2 hours:
TiWorker.exe is using CPU/disk — if so, it's still active.If Windows Update can't download files, get them directly from Microsoft:
Command Line Reset Options:
# Windows 10/11 Reset command systemreset --factoryreset # Windows 10 Fresh Start (keeps personal files, removes bloatware) # Available in Security → Device performance & health # Use Windows Recovery Environment reagentc /boottore
Updates that show no progress for hours are usually frozen because of a stuck service, full disk space, or a corrupted download cache. Run the troubleshooter, restart the Windows Update and BITS services, and clear the C:\Windows\SoftwareDistribution folder. If the disk is below 10% free, free some space first.
Press Win + R, type services.msc, and press Enter. Find Windows Update, right-click it, and choose Stop. Wait 10 seconds, then right-click and choose Start. Do the same for Background Intelligent Transfer Service (BITS). Close Services and try updating again.
The troubleshooter is a built-in tool that detects and fixes common update service problems. On Windows 11, go to Settings → System → Troubleshoot → Other troubleshooters → Windows Update → Run. On Windows 10, go to Settings → Update & Security → Troubleshoot → Additional troubleshooters → Windows Update.
Yes — this is safe and often fixes stuck updates. Stop the Windows Update service first, then rename or delete C:\Windows\SoftwareDistribution to SoftwareDistribution.old. Restart the service and Windows Update will create a fresh folder. Your installed updates are not affected.
Error codes usually point to a specific cause. 0x800f081f means a required component is missing, 0x80070005 is a permissions issue, and 0x80240034 means the update was superseded. Search the exact code on Microsoft Support for the matching fix, or use the Windows Update Assistant for that build.
Visit the Microsoft Software Download page, pick your Windows version, and download the latest cumulative update as an MSU file. Double-click it to install. The manual installer is useful when the standard updater is broken or stuck in a loop.
Usually yes, but it is a last resort. Settings → System → Recovery → Reset this PC → Keep my files resets Windows components while keeping your personal data. It can take 30-90 minutes. Try all the other fixes in this guide first, and back up important files before resetting.
A typical cumulative update takes 15-45 minutes on a healthy PC. Feature updates (Windows 10 → 11 or major version jumps) can take 1-3 hours. If you have been stuck at the same percentage for more than two hours with no disk or network activity, the update is almost certainly frozen and safe to interrupt.