How to Update PowerShell on Windows 11

To update PowerShell 7 on Windows 11, use the installation channel that supplied it, such as WinGet, Microsoft Store or Microsoft Update. For a WinGet-managed installation, use winget upgrade --id Microsoft.PowerShell --exact, then open a new PowerShell 7 session and check its version. Built-in Windows PowerShell 5.1 receives its security updates through Windows Update instead.

The first decision is which product you are running. Installing PowerShell 7 does not turn Windows PowerShell 5.1 into version 7. Updating PowerShellGet, a module-management component, also does not update the PowerShell program.

Check Which PowerShell You Opened

  1. Open your usual PowerShell window. Enter $PSVersionTable and press Enter. This only displays information; it does not install or change anything.
  2. Read PSVersion and PSEdition. On an ordinary Windows 11 desktop, version 5.1 with Desktop identifies Windows PowerShell. A 7.x version with Core identifies PowerShell 7.
  3. Record the starting version. You can display just the number with $PSVersionTable.PSVersion. Compare the same product after updating, rather than comparing two different shortcuts.
Steps to check your PowerShell version: run $PSVersionTable, read PSVersion and PSEdition, record the starting version
Illustration: how to check your PowerShell version.

Microsoft’s automatic-variable reference explains that PSVersionTable describes the current session. A window you leave open during installation is not evidence that the new program failed. The location shown by $PSHOME can also help identify which installation that session uses.

Before Updating

Save scripts, profiles and other work you need, and note how PowerShell was installed. If another person manages this PC or your scripts require a particular version, check their deployment requirements first. Test essential scripts after a change before depending on them for a production task.

Use the stable package named Microsoft.PowerShell for the steps here. Preview builds are a separate choice. Read the installer and any agreement or permission prompt before proceeding; an administrator may need to authorize a machine-wide installation. You do not need to change execution policy merely to update the application.

Update PowerShell 7 With WinGet

WinGet is Windows Package Manager. Microsoft’s upgrade-command documentation supports filtering by package ID and exact match, so this command targets PowerShell rather than updating every application.

  1. Check whether an update is available. In a command window, enter winget list --id Microsoft.PowerShell --upgrade-available. If a matching update appears, read the installed and available versions.
  2. Save work in PowerShell sessions before starting. Then enter winget upgrade --id Microsoft.PowerShell --exact and press Enter. Follow the displayed installer or permission prompts.
  3. Read the result. Wait for completion. If no upgrade is available or no installed package matches, use the troubleshooting section; do not assume every installation is managed by WinGet.
  4. Open a new PowerShell 7 window. Run $PSVersionTable.PSVersion again and compare it with the version the installer reported.

Microsoft’s PowerShell installation guide recommends retaining the original installation method when upgrading. WinGet can preserve the existing MSI or MSIX package format when that format is available for the update. Avoid switching package types without checking the differences your scripts depend on.

Install PowerShell 7 If You Only Have Version 5.1

If you need PowerShell 7 features and it is not installed, this is an installation rather than an update of version 5.1. Microsoft’s stable installation command is winget install --id Microsoft.PowerShell --source winget. Follow its prompts, then search Start for PowerShell 7 or launch pwsh from a new command window.

Keep Windows PowerShell available for scripts or modules that still require it. If you launch powershell.exe afterward, you have opened Windows PowerShell again; pwsh.exe launches the newer product. Microsoft explains this in its Windows PowerShell update-message FAQ.

Other Update Channels

Microsoft Store installations

Use Microsoft Store’s app-update controls for the Store package and wait for its update to finish. Store-based PowerShell packages support automatic updates. If the Store is missing or will not open, our Microsoft Store troubleshooting guide covers finding and repairing it.

Package format matters for advanced use. Microsoft documents restrictions for MSIX installations, including changes inside the application’s own folder and all-users profiles. Before moving an existing installation to a Store package, check its current limitations in the installation guide.

MSI installations using Microsoft Update

An MSI installation can opt into Microsoft Update during setup. Microsoft’s PowerShell update FAQ explains the separate options for enabling PowerShell updates and enabling Microsoft Update for other supported Microsoft software. Your organization may deliver these updates through its own management system.

A newly released PowerShell update may take time to appear in Microsoft Update; Microsoft says availability can take up to two weeks and is not guaranteed on that schedule. If you need it sooner, use the documented update route for your installation rather than repeatedly checking an unchanged old session.

ZIP or .NET-tool installations

Follow the same deployment method and current vendor instructions. A ZIP copy in a custom folder is not automatically the same installation as an app listed by WinGet. Keep separate version folders and launch paths clear if you maintain several copies; check the version inside the one your workflow actually starts.

Update Built-In Windows PowerShell 5.1

Open Settings > Windows Update, check for updates and follow any required restart prompt after saving work. Microsoft says Windows PowerShell 5.1 is a Windows component and only receives security updates through standard Windows update channels. Installing PowerShell 7 is optional when you have no requirement for its features.

The startup message inviting you to install the latest PowerShell can still appear in a fully updated Windows PowerShell 5.1 window. It is not proof of a missing Windows update. Use the version check and choose the product your task needs.

Troubleshooting

WinGet is not recognized

Microsoft’s WinGet setup guide says it is supplied by App Installer on Windows 11. Check that App Installer is installed and updated through Microsoft Store, then open a new command window and try again. Newly created Windows profiles may still be registering it. Use the linked Microsoft guide if registration remains incomplete, or ask the administrator on a managed PC.

WinGet finds no matching package or no upgrade

Check whether you have PowerShell 7 installed and how it was deployed. A ZIP copy, .NET tool, Store package or managed installation may need its own channel. A no-upgrade result can mean there is no available update through the selected source. Record the exact message and current version before troubleshooting further.

The version still says 5.1

Close the verification window and open PowerShell 7 from Start. Confirm with PSVersionTable. Check the executable used by a shortcut or scheduled task if it continues to launch a different installation; opening the same old shortcut repeatedly does not select the new product.

Will Update-Module update PowerShell itself?

No. Microsoft documents Update-Module as updating installed modules from an online gallery. Update-Module -Name PowerShellGet targets PowerShellGet. That may be useful for module maintenance, but it does not replace the PowerShell runtime and is not part of this application-update procedure.

Confirm the Update and Keep a Recovery Route

Open a fresh session, compare the version number, and test a harmless example from your normal workflow before running consequential scripts. Keep your original scripts and profiles backed up. If compatibility changes, use the appropriate supported product or ask the script’s maintainer before changing system settings. To remove an unwanted PowerShell 7 installation, use its original package-management or Windows app-uninstall route; do not delete Windows PowerShell’s system files.

Join Our Free Newsletter

Featured guides and deals

You may opt out at any time.
Read our Privacy Policy