I set up new computers with Windows 10, and part of that is performing Windows Update.

I have noticed that many times I will start the update process, and it will just get stuck on "Checking for updates".

Sometimes restarting the computer fixes the problem, sometimes not. Is this a known problem, and if so is a solution available?

  • 2
    Not uncommon for new PC's, its not really stuck.
    – Moab
    Sep 3, 2020 at 16:17
  • How long have you been waiting for it to complete?
    – gronostaj
    Sep 4, 2020 at 6:31

4 Answers 4


I've experienced the problem where Windows 10 machines seem to be stuck on checking for updates, etc. when using the Settings | Updates & Security and selecting Check for updates.

To resolve I open cmd and type in usoclient startinteractivescan and that seems to make it rescan and start downloading and/or installing, and move forward from being stuck.

I've read various posts about usoclient and it being part of the Update Orchestrator Service process and having various system Task Scheduler tasks scheduled. I've not been able to find a lot about usoclient and it's command line options from Microsoft though unfortunately.

I'm guessing the issue is related to checking for updates during the Active Hours period and the GUI option "Check for updates" not allowing it to move forward with whatever it's stuck doing.

In some environments there could also be group policy settings that configure Windows 10 update configurations which contribute to the process potentially.

enter image description here

Additionally, a few years back I wrote about things you can try to resolve this for other Windows Operating systems on Downloading Windows Updates takes forever which is rather comprehensive and some of it may still apply to Windows 10.

Supporting Resources

  • Command Line Equivalent of wuauclt in Windows 10 / Windows Server 2016

    Now, in order to force check Windows Update, follow the below instructions -

    1. Open a Command Prompt with Administrator privileges.
    2. Type in usoclient StartScan
    3. You will see that Windows Update in Settings.exe will start refreshing

    Note: USOClient.exe is located in C:\Windows\System32

    This will also force the client to report its status to the WSUS server (if configured).

    On using Sysinternal's Strings on UsoClient.exe, I found that there are more switches which can be used

    • StartScan: Used To Start Scan
    • StartDownload: Used to Start Download of Patches
    • StartInstall: Used to Install Downloaded Patches
    • RefreshSettings: Refresh Settings if any changes were made
    • StartInteractiveScan: May ask for user input and/or open dialogues to show progress or report errors
    • RestartDevice: Restart device to finish installation of updates
    • ScanInstallWait: Combined Scan Download Install
    • ResumeUpdate: Resume Update Installation On Boot

    Note: Attempting to run the Interactive mode if WU is configured to be solely non-Interactive, or on a non-Interactive server, should trigger an error (something along the lines of "AU Can not perform non-interactive scan if AU is interactive-only").

  • Manage device restarts after updates

  • 1
    Steven, I added as an answer with some detail but unfortunately nothing official from MS from that post suggest that person broke it down with systernals to find it's parameters I believe. If you have a way to decompile that exe and add more detail, I'd love to read it over and see what you find. If there's a MS post that talks about the program and it's parameters, I'd love to read it over too as I've not been able to find much from MS other than posts on answers.microsoft.com but nothing detailed as I'd like to see so I gave you what I think is at least satisfactory with that respect. Oct 3, 2020 at 14:33

Windows Update is problematic and was always slow. For more information about why, see the article Why is checking Windows Update so slow?

Below is a compendium of all the advice I found for making Windows Update work better:

  • For a new computer, Windows Update may be slow and need more patience (meaning wait for as much as a couple of hours).

  • The network driver may not be the most suited, so slowing down Windows Update. Windows Update itself may bring in a better driver, but it has to finish first. The solution might be to install the driver manually before doing Windows Update.

  • Installed software might cause problems, so it's advised to run Windows Update repeatedly on a new computer for as many runs as required before installing third-party software.

  • Run the Windows Update troubleshooter in:
    Settings > Update & Security > Troubleshoot > Additional troubleshooters > Windows Update > Run the troubleshooter

  • Run Microsoft's Windows Update Troubleshooter for Windows 10

  • Reset Windows Update components by running these commands in an elevated 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 msiserver
    net start wuauserv
    net start cryptSvc
    net start bits

    If all goes well, delete the .old folders (or return them if a problem arrives).

  • Run the DISM tool in an elevated Command Prompt:

    Dism /Online /Cleanup-Image /ScanHealth
    Dism /Online /Cleanup-Image /CheckHealth
    Dism /Online /Cleanup-Image /RestoreHealth
  • Run the following in an elevated PowerShell shell:

    SC config trustedinstaller start=auto
  • If nothing fixes the problem, use a heavy gun:
    Repair Install of Windows 10 with an In-place Upgrade

Once the last run of Windows Update has finished, reboot Windows (if not already done).


As an alternative approach, it looks like updates can be done via PowerShell, instead of using Windows Settings. Here is example for checking for updates:

$o_update = New-Object -ComObject Microsoft.Update.Searcher
$o_search = $o_update.Search("IsInstalled=0 and Type='Software' and IsHidden=0")

For ($n = 0; $n -LT $o_search.Updates.Count; $n++) {
   Write-Host $o_search.Updates.Item($n).Title

Example output:

2020-09 Cumulative Update Preview for .NET Framework 3.5 and 4.8 for Windows 10 Version 1909 for x64 (KB4576947)
2020-09 Update for Windows 10 Version 1909 for x64-based Systems (KB4023057)
Security Intelligence Update for Microsoft Defender Antivirus - KB2267602 (Version 1.325.104.0)
Update for Microsoft Defender Antivirus antimalware platform - KB4052623 (Version 4.18.2009.7)



Here are a few troubleshooting that should help you narrow down the cause and resolve the problem:

Restart the Windows Update Service & Clear Windows Update Cache Folders (wuauserv)

  1. Search for Command Prompt from the Windows Task Bar and right-click the Command Prompt icon.
  2. Select Run as Administrator and type "net stop wuauserv" (without quotes).
  3. Press Enter to stop the windows Update Service.
  4. Without closing the Command Prompt Window, navigate to the C:\Windows\SoftwareDistribution folder.
  5. Now delete "Download" and "DataStore" folder.
  6. Go back to the Command Prompt window and type "net start wuauserv" (without quotes).
  7. Press Enter and close the CMD window.
  8. Try running the update once again.

If the issue persist, try running the update in Safe Mode. For detailed info on switching Windows to Safe Mode follow instructions from here. https://wayouterrors.com/windows/how-to-run-a-program-in-safe-mode/

Another solution you can apply is to run WSUS Offline Update tool which can be downloaded from here: https://download.wsusoffline.net/

  • 1
    WSUS Offline doesn't bypass WU. It needs the update check to complete to know which updates are yet to be installed.
    – gronostaj
    Sep 4, 2020 at 6:32

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .