← Articles

Updating Windows Software Is Easier Than Ever with WinGet

By Todd Birtcher  ·  October 8, 2026

Keeping Windows applications current used to mean opening each program in turn, hunting for Check for Updates somewhere under Help, and clicking through an installer wizard — then doing it twenty-nine more times. There is a single command that does the whole lot, and it has been sitting on your machine the entire while.

What WinGet is

WinGet is the Windows Package Manager: a command-line tool that discovers, installs, upgrades and removes software from Command Prompt, PowerShell or Windows Terminal. If you have used apt on Linux or Homebrew on a Mac, it is the same idea, made official by Microsoft.

It is worth being precise about where it comes from, because “built into Windows” is almost right and occasionally misleading. WinGet ships as part of the App Installer component, which the Microsoft Store delivers and keeps updated. It is there on Windows 11, on modern builds of Windows 10, and on Windows Server 2025. Microsoft’s floor is Windows 10 version 1809 (build 17763) or later. On a brand-new profile it can take a moment to register, and on a stripped-down machine it may genuinely be absent — in which case App Installer is a free download from the Store.

Type winget at a prompt. If you get a help screen, you already have it.

And while we are here: it is said “WIN-get” — two syllables, the Win of Windows and the plain word get, which is exactly what the name is made of. You will hear it said other ways, the video further down among them, and nobody is going to correct you at the terminal. But that is the usual one, and it is the one that makes the name explain itself.

Why it is worth the switch

The commands

Open Command Prompt, PowerShell or Windows Terminal. Start with the one that changes nothing.

winget upgrade

Lists every application with a newer version available, and stops there. Nothing is downloaded and nothing is installed. Microsoft’s own advice is to run this first, so you can see what is about to happen.

winget upgrade --all

The blanket upgrade: find, download and install an update for every installed application that has one. -r and --recurse do the same thing if you prefer the short form, and winget update is an accepted alias for winget upgrade throughout.

winget upgrade --all --include-unknown

Some applications do not report a version number at all — they are simply always “latest.” WinGet cannot tell whether those need updating, so plain --all passes over them without a word. This flag tells it to try anyway.

Why an app still gets skipped

This is the part most write-ups leave out, and it is the reason people conclude that WinGet “doesn’t work.” --all quietly declines to touch two kinds of package, and each has its own switch.

The first is the unknown-version case above. The second is pinning: WinGet lets you hold a package at a particular version, and --all respects that pin and moves on. If you have ever pinned something and forgotten, this is where it hides. To sweep up both at once:

winget upgrade --all --include-unknown --include-pinned

That is the genuinely complete version of the blanket upgrade. Note that --include-pinned only releases non-blocking pins; a blocking pin stays put, which is the whole point of having set one.

About “silent”

WinGet is often described as updating everything quietly in the background. That is something it can do, not what it does by default: the default experience shows installer progress, and some installers will put their own window on screen. If you want it to keep quiet, ask:

winget upgrade --all --silent

-h is the short form. It suppresses installer UI where the installer supports being run that way — WinGet can pass the flag along, but it cannot make a badly-behaved installer honor it.

Running it as administrator

Some applications need elevation to install. Run WinGet from an ordinary prompt and Windows will raise a User Account Control prompt for each one; decline, and that install fails. Run it from an administrator prompt and those prompts do not appear at all — which is exactly what you want for an unattended run, and exactly why Microsoft attaches a caution to it. An elevated prompt installs whatever it is told to without asking you again. Use it for a list of applications you already trust.

Watch it done

If you would rather see it happen once before trying it yourself, this runs the blanket upgrade in Windows Terminal from start to finish.

Or open it directly on YouTube.

Where to go next

None of this is new — WinGet has been shipping for years. It is just one of those tools that stays invisible until somebody tells you it is there. Now you know.

Topics: Software  ·  Windows  ·  Command Line

Worth passing along?