C:\Windows.old is the snapshot of your previous Windows installation kept for 10 days after a feature update. It is usually 15–30 GB. Normally Windows auto-deletes it; when it does not, there is a forced removal path.

Short answer: first try Settings > System > Storage > Temporary files, tick Previous Windows installation(s), and click Remove files. If that fails, take ownership via takeown /F and delete from an admin Command Prompt with rd /S /Q.

The normal path — Storage Sense

  1. open Settings > System > Storage > Temporary files
  2. tick Previous Windows installation(s) (and optionally Windows Update Cleanup)
  3. click Remove files
  4. reboot

If the option is missing, Windows has already auto-cleared Windows.old or the 10-day window has passed.

The forced path when Disk Cleanup fails

Disk Cleanup sometimes fails because permissions inside Windows.old are broken after a failed update. Use takeown to reassign ownership, then rd to delete.

  1. press Start, type cmd, right-click Command Prompt, choose Run as administrator
  2. run takeown /F C:\Windows.old\* /R /A — takes ownership of every file
  3. run icacls C:\Windows.old\*.* /T /grant administrators:F — grants admin full control
  4. run rd /S /Q C:\Windows.old — deletes the folder and everything inside, silently

Step 4 does not prompt for confirmation. Double-check the path before pressing Enter.

Do not run these commands on any path other than C:\Windows.old. Running takeown and rd /S /Q against C:\Windows will destroy the OS.

If step 4 reports "access denied" on a file, reboot into Safe Mode (msconfig > Boot > Safe boot) and repeat from there — in Safe Mode almost no processes hold file handles.

Better next routes

For the rest of Windows.old-style leftovers, continue with How to Clear the Windows Update Cache (SoftwareDistribution).

For a broader Windows 11 cleanup pass, read How to Free Up Space on C Drive Windows 11 Natively.