I know of three ways to uninstall the default Windows apps on Windows 10: manually (Start menu, Apps & features settings), with the free Windows 10 App Remover tool, and with PowerShell.

Microsoft changes the name for its new-style Windows applications as fast as it delivers Windows updates:  Metro, Windows-8-style, Modern, Windows Store, Universal, and—in the latest incarnation—just Windows apps. If you just call them “programs,” I think you are on the safe side for the near future.

Nevertheless, we have to distinguish between conventional desktop applications and the touch-optimized apps that were introduced with Windows 8 because the latter have to be managed in a completely different way. In this post, I will call those new-style programs “Windows apps” or just “apps.”

In my terminology, the conventional Windows programs are “desktop applications” or just “applications.” I don’t like the term “desktop app” because, for me, a program that runs on a phone or tablet is usually no match for a full-blown application.

Windows 10 comes with a few pre-installed apps that you might not want to have on end-user PCs. Every installed program that your users don’t really need increases the costs for your organization because employees waste time playing with these programs or even bother the help desk if they run into problems. When it comes to program deployment, a minimalistic approach really makes sense.

You have several options for creating a reference OS image without the pre-installed Windows apps. The easiest way is to just grab the Windows 10 Enterprise LTSB edition because it comes without pre-installed apps. LTSB stands for “Long Term Servicing Branch” and signifies that these Windows installations won’t receive any feature updates (upgrades) through Windows Update. If you don’t want this, or if your organization doesn’t own a license agreement that gives you access to the Enterprise editions of Windows 10, you have to uninstall the Windows apps yourself.

I know of three ways to uninstall Windows 10 apps: you can manually uninstall each app, use the Windows 10 App Remover, or leverage PowerShell.

Manually ^

To manually uninstall apps, you just have to right-click the app’s tile on the Windows 10 Start menu. Note that not all apps can be removed this way (for instance, the OneNote app or the Music app).

Uninstall Windows 10 app in the Start menu

Uninstall Windows 10 app on the Start menu

Alternatively, you can uninstall Windows apps and desktop applications in Apps & Features settings (Start menu > Settings > System). With this option, you get a better overview of the apps, including desktop applications, that are installed on the machine. As with the tiles on the Start menu, you can’t uninstall all apps this way.

Some apps can't be uninstalled in Apps & features

Some apps can’t be uninstalled in Apps & features

Windows 10 App Remover ^

This is the main advantage of the Windows 10 App Remover. It even allows you to uninstall the Windows Store app. The author of the program warns you to remove the Windows Store app because you will no longer be able to install apps. However, perhaps this is just what you want for your end-user PCs.

Windows 10 App Remover

Windows 10 App Remover

The only app that you can’t uninstall is Edge. Since the browser wars, we all know that a Microsoft browser is not an application (or an app, for that matter) but a part of the operating system.

I don’t really recommend using Windows 10 App Remover even though almost every Windows how-to blog links to it. It is unclear who the author is, and most sites just link to a Google drive where you can download the tool. In the meantime, the source code is available, and some bloggers checked the Windows 10 App Remover on VirusTotal. Anyway, I wouldn’t run a tool from an unverified source on a production PC.

With PowerShell ^

The better way to go for the IT pro is PowerShell. This option also allows you to remove all apps, and you don’t have to worry that an app remover from an unknown source not only removes apps but also adds some that you don’t really want to have your machine.

To get a list of the package names of all installed apps for the current user, you can run the following command:

Get-AppxPackage | % {if (!($_.IsFramework -or $_.PublisherId -eq "cw5n1h2txyewy")) {$_}} | select PackageFullName

List all installed Windows apps with PowerShell

List all installed Windows apps with PowerShell

If you only want to uninstall a particular app, you can copy the package name from the above list and execute the next command:

Remove-AppXPackage <PackageFullName>

Remove Windows app with PowerShell

Remove Windows app with PowerShell

To uninstall all apps for the current user, you can use the command below. You will receive one error message because Edge can’t be uninstalled.

Note that this command also removes third-party apps that the user installed through the Windows Store. The Windows Store app will be uninstalled as well.

Get-AppxPackage | % {if (!($_.IsFramework -or $_.PublisherId -eq "cw5n1h2txyewy")) {$_}} | Remove-AppxPackage

Uninstall all Windows 10 apps with PowerShell

Uninstall all Windows 10 apps with PowerShell

I know of no way to reinstall the Windows Store app. If you change your mind later and want to install Windows apps, you have to create a new user account. Whenever a new user logs on to a Windows 10 machine, all provisioned apps will be automatically installed.

This is why removing all Windows apps for a particular account is not enough if you want to create a reference OS image without any apps. You also have to remove the provisioned apps before you sysprep the machine. I will say more about this procedure in my next post.

  1. Mistie 6 years ago

    I just tried the PowerShell method of removing unwanted Microsoft programs and received the following error message:

    ‘Get-AppxPackage’ is not recognized as an internal or external command, operable program or batch file.

    Very frustratring.

    • Jon 6 years ago


      Based on language used in your post, I’m guessing that you attempted to run this from the cmd line rather than from within powershell?

  2. David Anderson 5 years ago

    This is awesome, thanks for the information. It has been driving me nuts each time I deploy a new PC at the office. Microsoft’s shove it down your throat approach to things is getting pretty annoying. Thanks you very much for your time and sharing this information.

  3. Jay 5 years ago

    Will the Powershell script work if applied to a start-up script via group policy?

    • Author

      In never tried this, but these PowerShell cmdlets are for creating a master image that you deploy in your network. Remove-AppXPackage removes apps from a user account, so you can’t easily do this with a computer policy. If your users don’t have admin rights, things are difficult. You could try it with a scheduled task where you provide the right credentials or you use a tool like PDQ Deploy. This article explains how you can do  it and gives you some insights in the problems.

      If you just don’t want that users are tempted to play with the Windows 10 apps, you can also remove them from the Start menu.

  4. Murphy 4 years ago

    Hi, very useful article. Could you, please, publish adjusted command so the Windows Store app will not be uninstalled?

  5. Matty 3 years ago

    On Windows Version 10.0.17763.775 you can still remove any app using this method but some apps such as windows immersive control panel, inputapp, shellexperiencehost should stay active.

    You need these free tools:-

    • Psexec by Sysinternals;
    • DB Browser for SQLite.
    1. Download pstools.zip, unpack it to the C:\PS folder and then install (or download a portable version) DB Browser for SQLite;
    2. Using psexec, run the interactive command prompt under the Local System: psexec.exe -i -s -d cmd.exe
    3. In the next window run on behalf of the SYSTEM the executable file C:\Program Files\DB Browser for SQLite\DB Browser for SQLite.exe or SQLiteDatabaseBrowserPortable.exe
    4. Then click Open Database in DB Browser window and open the following file: %ProgramData%\Microsoft\Windows\AppRepository\StateRepository-Machine.srd;
    5. Go to the Browse Data tab and select the Package table;
    6. Now find the name of the app you want to remove in the PackageFullName column.
    7. Change the value in the IsInbox column from 1 to 0 for this app
    8. Save the changes using File->Write changes (or press CTRL+S);
    9. Then you should be able to remove the app using PowerShell using methods described in other posts or your other preferred app remover such as windows 8 apps remover https://sourceforge.net/projects/windows8appremover/
    10. If however you get an error message when writing changes in SQLite then you may need to paste the script shown here https://pastebin.com/uJhpXD7j into the execute sql section of DB browser for SQlite

    My sources are as follows



Leave a reply to Mistie Click here to cancel the reply

Please enclose code in pre tags

Your email address will not be published.


© 4sysops 2006 - 2022


Please ask IT administration questions in the forums. Any other messages are welcome.


Log in with your credentials


Forgot your details?

Create Account