KB5041585 sitting at “Downloading — 0%” (or frozen at 47% for three hours) is a delivery problem, not an install problem — the update has not even arrived yet. On HP laptops this frequently traces to the Background Intelligent Transfer Service getting wedged, a corrupted partial download that the client keeps retrying, or network interference from VPNs and “optimizer” tools. The fix sequence below restarts the delivery machinery from the network up.
Work in order: verify the stall, clear network interference, repair BITS and the cache, then pull a fresh copy.
HP laptops deserve one specific note: many ship with network “optimization” utilities — gaming network prioritizers, bandwidth managers, or trial VPN clients — that install filter drivers on the Wi-Fi adapter. These tools are the single most common HP-specific cause of BITS stalls, because they intercept the exact traffic pattern update downloads use. If you find one in your installed apps, disable its filtering (or uninstall it) before blaming Windows.
Why this happens
- Wedged BITS queue: The Background Intelligent Transfer Service manages the download; a wedged job blocks the queue and the percentage never moves.
- Corrupted partial download: Damaged chunks in the SoftwareDistribution cache fail verification, and the client re-downloads them in an endless loop.
- VPN or proxy interference: VPNs, corporate proxies, and “game booster” network filters break the range-request connections BITS uses.
- Metered connection throttling: Windows pauses or trickles update downloads on connections marked as metered.
- DNS or network stack issues: Stale DNS or a corrupted Winsock catalog prevents the client from reaching the delivery endpoints reliably.
- Antivirus web filtering: Real-time web shields from third-party antivirus can intercept and stall the update download streams.
- Server-side throttling: Occasionally Microsoft’s delivery network is simply slow in a region; the client handles this badly and appears frozen.
How to fix it
Work through these in order — diagnose first, then act.
Fix 1: Confirm the stall and try pause-resume
- Note the exact percentage and wait 15 minutes — if it has not moved a single percent, it is stalled, not slow.
- In Settings > Windows Update, click Pause updates, wait two minutes, then Resume updates.
- The pause forces the delivery client to drop and renegotiate its connections, clearing transient stalls.
- If the percentage jumps after resuming, let it run — the problem was server-side or connection-state, and it is over.
Fix 2: Disconnect the VPN and check metered status
- Fully disconnect any VPN — BITS range requests frequently break inside VPN tunnels.
- Go to Settings > Network & internet > Wi-Fi, click your network, and check Metered connection — turn it Off for the update.
- If you use a third-party firewall or “game booster,” disable its network filtering temporarily.
- Retry the download with a clean, unmetered, unfiltered connection. Our guide to metered connections blocking updates covers the edge cases.
Fix 3: Restart BITS and the update services
- Open an elevated Command Prompt and run
net stop wuauserv,net stop bits,net stop cryptSvc,net stop msiserver. - Wait ten seconds, then run
net start cryptSvc,net start bits,net start wuauserv,net start msiserver. - Check for updates again — a restarted BITS picks up the download with a fresh job queue.
- If BITS refuses to start, check its dependencies (it needs RPC and the Event Log service) in
services.msc.
Fix 4: Clear the corrupted partial download
- With the services stopped (as in Fix 3), rename
C:\Windows\SoftwareDistributiontoSoftwareDistribution.old. - Also rename
C:\Windows\System32\catroot2tocatroot2.oldfor a complete cache reset. - Restart the services and check for updates — KB5041585 downloads from zero with clean chunks.
- The old folders can be deleted after a successful install; keep them until then as a fallback.
Fix 5: Reset the network stack
- In an elevated Command Prompt, run
netsh winsock resetandnetsh int ip reset. - Run
ipconfig /flushdnsto clear stale DNS entries that may point at dead delivery endpoints. - Restart the laptop — these resets only take effect after a reboot.
- After rebooting, retry the download before reinstalling any VPN or network-filtering tool.
Fix 6: Temporarily disable antivirus web filtering
- Open your third-party antivirus and disable its web shield / real-time web filtering (keep file protection on if the product allows granular control).
- Retry the KB5041585 download immediately.
- If it completes, the web filter was intercepting the BITS streams — add an exclusion for Windows Update or consider switching to Defender.
- Re-enable the web shield right after the download finishes. Microsoft documents safe update practices at Windows support .
Fix 7: Pull the update manually from the Catalog
- If the automated download still will not move, go to the Microsoft Update Catalog and search KB5041585.
- Download the x64 package and install it directly — this skips BITS, the delivery client, and the entire download pipeline.
- After manual install, run Check for updates so the system registers the KB as installed.
- Keep an eye on the next Patch Tuesday: if downloads stall again, the BITS or network issue is systemic and deserves the deeper network diagnosis, plus a check that driver updates are not piling up behind the blockage.
Fix 8: Switch to a wired connection and alternate DNS
- If Wi-Fi is your only test so far, connect via Ethernet (or USB tethering from your phone) and retry — this isolates Wi-Fi driver and router quirks from the diagnosis.
- Temporarily set your DNS to a public resolver (8.8.8.8 / 1.1.1.1) in the adapter properties to rule out ISP DNS returning stale delivery endpoints.
- If the download completes on the alternate connection, the problem was your network path, not Windows — update the Wi-Fi driver or investigate the router.
- Revert the DNS change afterward unless you prefer the public resolver permanently.
Closing
A stuck download is the delivery pipeline telling you it cannot do its job — wedged BITS, poisoned cache, filtered network, or metered connection. Restart the machinery, clear the interference, and the megabytes flow again. And when the automated path refuses, the Update Catalog is always there: the same update, no delivery drama.
