Windows Update error 0x800f0922, explained and fixed

0x800f0922 is a Component-Based Servicing (CBS) install failure. Its two classic settings are enabling .NET Framework 3.5, which cannot reach or assemble its files, and updates failing when the small System Reserved or EFI partition is nearly full. It appears at the install stage, often late, after most of the work seems done.

The fix, in order

  1. For .NET Framework 3.5 installs: connect directly and retry. Disconnect from any VPN and disable proxy settings, since this failure often means the installer could not reach Microsoft’s servers. Then enable the feature again via Control Panel → Programs → Turn Windows features on or off.
  2. Give .NET its source from installation media if it still fails. Mount the Windows ISO, then run: DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /Source:D:\sources\sxs /LimitAccess, replacing D: with the mounted drive letter.
  3. For update installs: check the System Reserved / EFI partition space. Cumulative and feature updates stage files there. If it is effectively full, free space in it (on the EFI partition, removing old font files under EFI\Microsoft\Boot\Fonts is the documented cleanup) or extend it with a partition tool.
  4. Repair the component store and system files. From an admin Command Prompt: DISM /Online /Cleanup-Image /RestoreHealth, then sfc /scannow. Restart afterwards; a repaired store often lets the same update sail through on the next attempt.
  5. Reset the Windows Update components. In an admin Command Prompt, stop the services: net stop wuauserv, net stop cryptSvc, net stop bits, net stop msiserver. Rename C:\Windows\SoftwareDistribution to SoftwareDistribution.old and C:\Windows\System32\catroot2 to catroot2.old, then restart the four services with net start. This rebuilds the download cache and the update database from scratch.

If it still happens

If neither context fits and the failure persists, install the update manually from the Microsoft Update Catalog to get a cleaner error, and read the tail of C:\Windows\Logs\CBS\CBS.log for the named package that failed. A repair install (in-place upgrade) is the final rebuild when the servicing stack itself is damaged.

Common questions

Why does a full recovery partition break updates? Updates stage boot-critical files in the System Reserved or EFI partition. When it has only a few megabytes free, the install runs out of room at the final commit stage and reports this code, even though the main drive has plenty of space.

Is 0x800f0922 the same problem as 0x800f081f? Related, not identical. 0x800f081f says the repair source files could not be found at all. 0x800f0922 is the broader CBS install failure, which includes the full-reserved-partition and .NET reachability cases covered here.

Related errors

Windows Update error 0x800f081f · Windows Update error 0x800f0900 · Windows Update error 0x800f0988