Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Windows 10 has several places where installed software appears, and each view shows a different type of application. For the quickest list, open Settings > Apps > Apps & features. Traditional desktop programs are often easier to find in Control Panel > Programs and Features, while winget list and PowerShell provide more useful command-line inventories.

These instructions apply to the final mainstream Windows 10 release, version 22H2. Microsoft ended standard Windows 10 support on October 14, 2025; Enterprise LTSC editions follow separate support schedules. See Microsoft’s Windows 10 release information.

Quick comparison

Method Best for Main limitation
Settings > Apps > Apps & features Most users who want a graphical list Does not guarantee every portable or unregistered program
Control Panel > Programs and Features Traditional Win32 desktop programs Microsoft Store apps may not appear
Start > All apps Finding programs with Start-menu shortcuts Not a complete software inventory
winget list Searching and exporting a command-line list Some packages may have unknown details
Get-AppxPackage Microsoft Store, AppX, and MSIX packages Does not list ordinary EXE and MSI programs
PowerShell registry query Registered traditional desktop software Portable software and missing uninstall entries are omitted

1. See installed apps in Settings

This is the standard Windows 10 graphical method.

  1. Open Start.
  2. Select Settings.
  3. Select Apps.
  4. Select Apps & features.

Windows displays an alphabetical list of apps and programs registered with Windows. Use the search box to find a particular name, or use the sort and drive filters to narrow the list.

Select an item to see available actions. Depending on the application, Windows may offer Uninstall, Move, or Advanced options. Advanced options can include repair, reset, and background-app controls, but they are not available for every program.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Open Apps & features with a command

Press Windows key + R, enter ms-settings:appsfeatures, and select OK. Microsoft documents this Settings URI in its Windows Settings launch documentation.

Why an app may be missing from Settings

Apps & features is not a guaranteed list of every executable or application folder on the computer. A portable program may run without registering an uninstall entry. A damaged installation or deleted registry entry can also prevent software from appearing.

Some built-in Windows apps cannot be removed from this page. If Windows does not provide an uninstall option, Microsoft recommends trying Control Panel where appropriate. Do not manually delete a program folder as a substitute for its uninstaller; that can leave services, drivers, and registry entries behind.

2. Use Control Panel for traditional desktop programs

Control Panel’s Programs and Features view is particularly useful for software installed with traditional EXE or MSI installers.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Open the taskbar search box.
  2. Type Control Panel.
  3. Open Control Panel.
  4. Select Programs.
  5. Select Programs and Features.

Select a program in the list to reveal Uninstall or Uninstall/Change. The list commonly includes the program’s publisher, version, and installation date, although the information depends on what the installer registered.

Open Programs and Features directly

Press Windows key + R and run either appwiz.cpl or control.exe /name Microsoft.ProgramsAndFeatures, then select OK. The commands are documented by Microsoft for opening the Programs and Features Control Panel item.

Programs and Features depends on uninstall information stored by the software. It may not show portable applications, Store apps, programs with damaged registrations, or software whose uninstall registry entry was removed.

3. Browse the Start menu’s app list

  1. Select Start.
  2. Select All apps.
  3. Browse the alphabetical list, or begin typing while the Start menu is open to search.

You can right-click an entry and select Uninstall if Windows provides that command. This is convenient for launching or removing an app, but it should not be treated as an inventory. A desktop program can be installed without creating a Start-menu shortcut, and an old shortcut can remain after the program has been removed.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

4. List installed programs with WinGet

WinGet is Microsoft’s command-line package manager. Its list command displays applications detected by the Windows Package Manager, including some applications installed from sources other than WinGet.

  1. Open Command Prompt or PowerShell.
  2. Run winget list.

The output normally includes an application name, installed version, available version, and package source. It is useful for finding outdated software as well as seeing what is installed.

Useful WinGet commands

Command Purpose
winget list Lists detected installed applications
winget list firefox Searches the installed list for text containing “firefox”
winget list –name “Mozilla Firefox” Filters by application name
winget list –id Mozilla.Firefox Filters by package ID
winget list –upgrade-available Shows applications for which WinGet detects an upgrade
winget list –include-unknown Includes packages whose current version cannot be determined

The text after winget list is a search query, not wildcard syntax. You can also use filters such as –source, –scope, and –exact. See Microsoft’s WinGet list command documentation.

If Windows says “winget is not recognized”

WinGet is supported on Windows 10 version 1809, build 17763, and later. It is delivered through Microsoft’s App Installer component. If the command is unavailable, install or update App Installer, then try again.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If WinGet is still not available immediately after signing in, Microsoft documents this PowerShell registration command:

Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe

App Installer may be missing, damaged, or not registered correctly. WinGet is helpful, but it is not a perfect forensic inventory: some entries cannot be fully identified, and some versions are shown as unknown.

5. List Microsoft Store and AppX apps with PowerShell

Use Get-AppxPackage when you specifically want Microsoft Store, AppX, or MSIX packages.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

To list packages installed for the signed-in user, open PowerShell and run Get-AppxPackage.

A shorter, more readable result is Get-AppxPackage | Select-Object Name, Version, Publisher, InstallLocation.

To check packages installed for all user accounts, open PowerShell as administrator and run Get-AppxPackage -AllUsers.

For a compact table across all users, use Get-AppxPackage -AllUsers | Select-Object Name, Version, Publisher, PackageFullName.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The -AllUsers parameter requires administrator permissions. A package can exist for another user but not be registered for the account currently signed in.

This command is not a replacement for Settings, Programs and Features, or a general desktop-program inventory. Traditional programs installed with EXE or MSI installers generally will not be returned by Get-AppxPackage. See Microsoft’s Get-AppxPackage documentation.

6. Query traditional programs with PowerShell

Traditional installers commonly record uninstall information in the Windows registry. The main machine-wide location is HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall.

On 64-bit Windows, 32-bit software is often registered under a second path. Per-user installations can be recorded under the current user’s registry hive. This query checks all three common locations:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

$paths = @(
‘HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*’,
‘HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*’,
‘HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*’
)

Get-ItemProperty $paths -ErrorAction SilentlyContinue |
Where-Object DisplayName |
Select-Object DisplayName, DisplayVersion, Publisher, InstallDate, UninstallString |
Sort-Object DisplayName

The result shows only programs that registered uninstall information. The UninstallString field can be useful when a program is listed in the registry but its normal uninstall shortcut is missing. Review that command before running it; do not execute an unfamiliar command blindly. See Microsoft’s guidance on working with software installations.

How to get the most complete practical list

No built-in Windows 10 screen guarantees that it will find every executable on the disk. For a thorough check, compare several sources:

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Check Settings > Apps > Apps & features.
  2. Check Control Panel > Programs and Features.
  3. Run winget list.
  4. Run Get-AppxPackage for Store and AppX packages.
  5. Use the registry query for traditional programs registered per machine or per user.
  6. For a suspicious or unknown application, inspect its file location, publisher, startup entries, scheduled tasks, and running processes separately.

Differences between the lists are normal. Settings and Control Panel use different registration systems, WinGet uses package and installer metadata, and AppX packages are tied to user profiles. A program appearing in one list but not another does not automatically mean that Windows is infected or that the program is unusable.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Commands to avoid for routine inventory

Get-Package

Get-Package returns packages installed through PowerShell’s PackageManagement providers. It is not a complete list of all applications installed in Windows, so it should not replace Settings, Control Panel, WinGet, or registry queries. See Microsoft’s Get-Package documentation.

Win32_Product

Queries based on the Windows Installer Win32_Product class are a poor choice for routine inventory. Microsoft notes that they can trigger Windows Installer consistency checks, take a long time, generate Event Viewer errors, and cause installed packages to be verified or repaired. Use uninstall registry keys or WinGet instead.

Which method should you use?

  • Want the easiest graphical list? Use Start > Settings > Apps > Apps & features.
  • Looking for a conventional desktop program? Open Programs and Features with appwiz.cpl.
  • Need a command-line list? Run winget list.
  • Checking Microsoft Store applications? Run Get-AppxPackage.
  • Need a broader technical inventory? Compare the graphical lists, WinGet, AppX results, and uninstall registry entries.

FAQ

How do I see all installed programs in Windows 10?

Start with Settings > Apps > Apps & features. For a broader check, also open Programs and Features with appwiz.cpl, run winget list, and query AppX packages with Get-AppxPackage. No single built-in view is guaranteed to show every executable.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why is an installed program not listed in Windows 10 Apps & features?

The program may be portable, may not have registered uninstall information, or may have a damaged or deleted uninstall entry. Check Control Panel’s Programs and Features, WinGet, and the uninstall registry paths.

What is the command to list installed programs in Windows 10?

Run winget list in Command Prompt or PowerShell. For Microsoft Store and AppX packages, use Get-AppxPackage. These commands cover different types of software.

How do I list installed apps for every Windows user?

Open PowerShell as administrator and run Get-AppxPackage -AllUsers for AppX and MSIX packages. Traditional programs require checking machine-wide and per-user uninstall registry locations separately.

Is Get-Package a complete list of installed applications?

No. Get-Package reports packages managed through PackageManagement providers. It is not a general inventory of every application installed on Windows 10.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Should I use Win32_Product to list installed programs?

No. Queries using Win32_Product can trigger Windows Installer consistency checks, which may be slow and can verify or repair packages. Use WinGet or uninstall registry queries for routine inventory.

The Bottom Line

For most Windows 10 users, Settings > Apps > Apps & features is the right starting point. It is not a complete inventory, however. Control Panel catches many traditional desktop programs, while WinGet and PowerShell expose package information that the graphical lists may omit. Comparing those sources gives you the most complete practical view without relying on the problematic Win32_Product query.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.