Free tools Windows power users keep installed
One-click scans. No signup required.
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.
- Open Start.
- Select Settings.
- Select Apps.
- 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.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Clear out junk files and repair common Windows errors3Fix the driver behind crashes, sound loss and screen glitches#1 Best Overall
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.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minute- Open the taskbar search box.
- Type Control Panel.
- Open Control Panel.
- Select Programs.
- 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
- Select Start.
- Select All apps.
- 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.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →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.
- Open Command Prompt or PowerShell.
- 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.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →If WinGet is still not available immediately after signing in, Microsoft documents this PowerShell registration command:
Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe
Rank #3
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.
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.
The -AllUsers parameter requires administrator permissions. A package can exist for another user but not be registered for the account currently signed in.
Rank #4
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:
$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.
Best Value
- Check Settings > Apps > Apps & features.
- Check Control Panel > Programs and Features.
- Run winget list.
- Run Get-AppxPackage for Store and AppX packages.
- Use the registry query for traditional programs registered per machine or per user.
- 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.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.
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.
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.
Quick Recap
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.

