Skip to content
WindowsAdvanced

What Is Microsoft .NET Desktop Runtime? How to Install, Check Version & Fix “Runtime Required” Errors

The Microsoft .NET Desktop Runtime is a Windows component required to run many desktop applications built with modern .NET technologies such as: Windows Form...

BI
Bison Technical Team Enterprise IT specialists
Updated 17 Oct 2024 20 min read 1,947 total views
Structured technical guidanceSafety notes included where requiredSources listed below

The Microsoft .NET Desktop Runtime is a Windows component required to run many desktop applications built with modern .NET technologies such as:

  • Windows Forms;
  • Windows Presentation Foundation (WPF);
  • other Windows desktop applications targeting .NET.

If a program displays an error such as:

Advertisement

You must install or update .NET to run this application

or:

The framework 'Microsoft.WindowsDesktop.App' was not found

the application may require a specific version and architecture of the .NET Desktop Runtime.

The quick answer is:

If you only want to run a normal Windows desktop application built with .NET, install the .NET Desktop Runtime version requested by the application.

You normally do not need the full .NET SDK unless you are developing software.


Quick Answer: Which .NET Package Do I Need?

Microsoft provides several different .NET packages.

Package Main Purpose
.NET Runtime Runs .NET console and non-desktop applications
.NET Desktop Runtime Runs Windows Forms and WPF desktop applications
ASP.NET Core Runtime Runs ASP.NET Core web/server applications
.NET SDK Used to build and develop .NET applications

Microsoft currently documents that the .NET Desktop Runtime includes the .NET Runtime, so if your Windows desktop application requires the Desktop Runtime, you normally do not need to install the base Runtime separately.


What Is .NET?

.NET is Microsoft’s modern development platform for building applications.

Developers can use it to create:

  • Windows desktop applications;
  • web applications;
  • cloud services;
  • command-line tools;
  • APIs;
  • background services;
  • mobile applications;
  • cross-platform software.

Different application types require different runtime components.

For Windows desktop software built with WPF or Windows Forms, the relevant package is usually the:

.NET Desktop Runtime


What Is Microsoft .NET Desktop Runtime?

The .NET Desktop Runtime provides the libraries and runtime environment required to run Windows desktop applications built with supported modern .NET versions.

Microsoft specifically identifies the Desktop Runtime as the package used to run applications built with:

  • Windows Presentation Foundation (WPF);
  • Windows Forms.

A simple model is:

 
Windows Desktop Application
        ↓
.NET Desktop Runtime
        ↓
.NET Runtime
        ↓
Windows
 

The application uses the runtime rather than carrying every .NET component inside the program itself—unless it was published as a self-contained application.


What Does Microsoft.WindowsDesktop.App Mean?

When a modern .NET desktop application runs, it may depend on a shared framework named:

 
Microsoft.WindowsDesktop.App
 

This framework contains Windows desktop components required by WPF and Windows Forms applications.

If the required version is missing, you may see an error referring to:

 
Microsoft.WindowsDesktop.App
 

This is a strong indication that the application needs the .NET Desktop Runtime.


Is .NET Desktop Runtime the Same as .NET Runtime?

No.

They are related but not identical.

.NET Runtime

The base .NET Runtime provides the components required to run many standard .NET applications.

.NET Desktop Runtime

The Desktop Runtime includes the base .NET Runtime plus Windows desktop libraries, including support for WPF and Windows Forms. Microsoft documents this distinction explicitly.

Therefore:

If an application requires Microsoft.WindowsDesktop.App, install the Desktop Runtime—not only the basic .NET Runtime.


Is .NET Desktop Runtime the Same as .NET Framework?

No.

This is one of the most common points of confusion.

.NET Framework

Older Microsoft Windows applications may require versions such as:

 
.NET Framework 3.5
.NET Framework 4.8
 

Modern .NET

Modern .NET releases use version families such as:

 
.NET 6
.NET 7
.NET 8
.NET 9
.NET 10
 

and include separate packages such as:

 
.NET Runtime
.NET Desktop Runtime
ASP.NET Core Runtime
.NET SDK
 

Installing modern .NET Desktop Runtime does not automatically replace every .NET Framework requirement.

An older application that specifically requires .NET Framework 3.5 may still require that Windows feature.


Is .NET Desktop Runtime the Same as Windows App Runtime?

No.

These names are easy to confuse.

.NET Desktop Runtime is part of the Microsoft .NET platform.

Windows App Runtime / Windows App SDK Runtime belongs to Microsoft’s Windows App SDK ecosystem.

They serve different purposes.

A program asking for:

 
Microsoft.WindowsDesktop.App
 

normally needs .NET Desktop Runtime.

A program asking for Windows App Runtime or Windows App SDK components may require a different package.


Why Does an Application Need .NET Desktop Runtime?

Developers commonly publish .NET applications in one of two ways.

Framework-Dependent Application

The application expects the required .NET Runtime to already be installed on Windows.

Advantages may include:

  • smaller application size;
  • shared runtime;
  • centralized runtime servicing.

If the required runtime is missing, the application may refuse to start.

Self-Contained Application

The application includes the required .NET runtime components with the software.

This often makes the application larger, but it may run without a separate system-wide runtime installation.

Therefore:

Not every .NET application requires the user to manually install .NET Desktop Runtime.

It depends on how the developer published the application.


Common Error: “You Must Install or Update .NET to Run This Application”

A typical error may say that .NET must be installed or updated.

It may show information such as:

 
Framework:
Microsoft.WindowsDesktop.App

Version:
8.0.0

Architecture:
x64
 

This information is important.

You need to match:

  • runtime family;
  • major version;
  • architecture.

Do not simply install the newest random .NET package and assume the application will work.


How to Know Which .NET Desktop Runtime Version You Need

Read the application error carefully.

Look for a version such as:

 
6.0
8.0
9.0
10.0
 

and an architecture such as:

 
x64
x86
Arm64
 

For example:

 
Microsoft.WindowsDesktop.App 8.0.x
x64
 

normally indicates that you need an appropriate .NET 8 Desktop Runtime x64 installation.


Why the Correct Major Version Matters

Modern .NET applications generally target a specific runtime family.

An application compiled for .NET 8 may request:

 
Microsoft.WindowsDesktop.App 8.0
 

Installing only .NET 10 does not necessarily mean that the exact requested runtime family is available to that application.

Multiple .NET runtime versions can coexist on the same Windows computer.

For example:

 
.NET Desktop Runtime 6
.NET Desktop Runtime 8
.NET Desktop Runtime 9
.NET Desktop Runtime 10
 

may all exist side by side.

This is normal.


Why Architecture Matters: x64 vs x86 vs Arm64

The architecture of the runtime can also matter.

Microsoft currently publishes Desktop Runtime installers for architectures including:

  • x64;
  • x86;
  • Arm64.

x64

Used by most modern 64-bit Windows PCs.

x86

Required by some 32-bit applications.

Arm64

Used by Windows on ARM devices.

An x64 computer may sometimes need both:

 
x64 Runtime
x86 Runtime
 

if it runs both 64-bit and 32-bit .NET applications.


How to Check Whether Windows Is x64, x86 or ARM64

Open:

Settings → System → About

Check:

System type

You may see something similar to:

 
64-bit operating system, x64-based processor
 

Most modern Intel and AMD PCs use x64.


How to Download .NET Desktop Runtime Safely

Use Microsoft’s official .NET website.

Do not download runtime installers from random software-download websites.

Choose:

  1. the required .NET version;
  2. Desktop Runtime;
  3. the correct architecture;
  4. the Windows installer.

Microsoft’s current download pages clearly separate:

  • SDK;
  • ASP.NET Core Runtime;
  • Desktop Runtime;
  • base .NET Runtime.

How to Install .NET Desktop Runtime

Step 1: Close the Affected Application

Close the application that displayed the .NET error.

Step 2: Download the Correct Runtime

Choose the version and architecture required.

Step 3: Run the Installer

Double-click the downloaded installer.

Step 4: Approve Administrator Permission

For system-wide installation, administrative privileges may be required. Microsoft’s Windows installation guidance notes that system-wide .NET installation should be performed with administrator privileges.

Step 5: Complete Installation

Follow the installer instructions.

Step 6: Reopen the Application

Try the application again.

A Windows restart is not always required, but restarting can be useful if the program still does not detect the newly installed runtime.


How to Check Installed .NET Runtimes Using Command Prompt

Open Command Prompt and run:

 
dotnet --list-runtimes
 

Microsoft documents this as the standard command to list installed .NET runtimes.

Example output:

 
Microsoft.AspNetCore.App 8.0.20
Microsoft.NETCore.App 8.0.20
Microsoft.WindowsDesktop.App 8.0.20
Microsoft.NETCore.App 9.0.9
Microsoft.WindowsDesktop.App 9.0.9
 

For desktop applications, look specifically for:

 
Microsoft.WindowsDesktop.App
 

How to Interpret dotnet --list-runtimes

Suppose the program needs:

 
Microsoft.WindowsDesktop.App 8.0
 

and the command shows:

 
Microsoft.WindowsDesktop.App 8.0.20
 

Then the .NET 8 Desktop Runtime is installed.

But if you only see:

 
Microsoft.NETCore.App 8.0.20
 

and no:

 
Microsoft.WindowsDesktop.App
 

then you may have only the base .NET Runtime installed.

Installing the Desktop Runtime may be required.


How to Check .NET Installation Details

Run:

 
dotnet --info
 

This displays more detailed .NET environment information.

Microsoft documents dotnet --info, dotnet --version and dotnet --list-runtimes as standard .NET CLI environment commands.


Why dotnet --version Can Be Misleading

Users sometimes run:

 
dotnet --version
 

and assume it shows the installed Desktop Runtime.

It does not.

Microsoft documents that:

 
dotnet --version
 

reports the .NET SDK version used by the CLI.

To check runtimes, use:

 
dotnet --list-runtimes
 

That is the more useful command for this troubleshooting task.


How to Check Installed Runtime From Windows Apps

You can also inspect:

Settings → Apps → Installed apps

or:

Control Panel → Programs and Features

Depending on the installed version, entries may appear similar to:

 
Microsoft .NET Runtime
Microsoft Windows Desktop Runtime
Microsoft ASP.NET Core
Microsoft .NET SDK
 

However, the CLI method is usually clearer when multiple versions are installed.


Where Is .NET Installed?

Microsoft states that .NET is normally installed system-wide under:

 
C:\Program Files\dotnet
 

unless another installation method uses a different location.

On 64-bit Windows, 32-bit components may also involve:

 
C:\Program Files (x86)\dotnet
 

depending on architecture and installation.


Why Does My Program Still Say .NET Is Missing After Installation?

Common causes include:

  • wrong major runtime version;
  • wrong architecture;
  • base Runtime installed instead of Desktop Runtime;
  • application is 32-bit but only x64 runtime exists;
  • application requires an older runtime family;
  • corrupted installation;
  • application was not restarted;
  • PATH or installation-detection issue;
  • application is using a private/runtime-specific configuration.

Check:

 
dotnet --list-runtimes
 

before installing multiple random runtime packages.


Example: Application Requires .NET 8 Desktop Runtime

Suppose an application error says:

 
Framework:
Microsoft.WindowsDesktop.App

Version:
8.0.0

Architecture:
x64
 

First run:

 
dotnet --list-runtimes
 

If no entry beginning with:

 
Microsoft.WindowsDesktop.App 8.
 

appears for the correct architecture, install the .NET 8 Desktop Runtime x64 from Microsoft.


Example: 32-Bit App Fails on 64-Bit Windows

A 64-bit Windows computer can still run 32-bit applications.

Suppose:

 
Windows: x64
Application: x86
Required Runtime: .NET Desktop Runtime 8
 

The application may require the x86 Desktop Runtime even though Windows itself is 64-bit.

This is why architecture should be checked carefully.


Do I Need to Install Every .NET Desktop Runtime Version?

No.

Install only the versions required by the software you use.

However, multiple major runtime versions can legitimately coexist because different applications may target different .NET generations.

Do not uninstall an older runtime simply because a newer one exists unless you know no application depends on it and the version is no longer required or supported.


Can .NET 10 Replace .NET 8?

Not necessarily.

A newer major version does not automatically serve as a universal replacement for every older runtime requirement.

Applications can target specific .NET runtime families.

Therefore a system may legitimately need:

 
.NET 8 Desktop Runtime
.NET 9 Desktop Runtime
.NET 10 Desktop Runtime
 

simultaneously.


Do Patch Versions Matter?

Modern .NET servicing normally updates within a major/minor runtime family.

For example, an installed supported patch within .NET 8 may satisfy an application targeting the compatible .NET 8 runtime family.

However, exact roll-forward behaviour depends on application configuration and .NET runtime policy.

For ordinary users:

Install the current supported patch release for the required major runtime family unless the application vendor specifies otherwise.


Should I Install Preview Versions?

Usually no.

Microsoft labels preview releases as early-access builds and states that preview releases are generally not intended as normal production-supported releases.

For business computers, production servers and normal end users, prefer stable supported releases unless a developer specifically requires a preview.


What Is .NET SDK?

The .NET SDK is primarily for software development.

It contains tools used to:

  • compile applications;
  • create projects;
  • restore packages;
  • build software;
  • publish software;
  • run development commands.

Microsoft notes that the SDK includes the runtimes as well.

Therefore a developer workstation with the SDK installed may already have the corresponding Desktop Runtime.


Do Normal Users Need the .NET SDK?

Usually no.

If your only requirement is:

“I need to run this Windows application.”

install the required Runtime instead of the SDK.

The SDK is larger and includes development tools that normal application users generally do not need.


What Is ASP.NET Core Runtime?

The ASP.NET Core Runtime is used for running web/server applications built with ASP.NET Core.

It is different from the Desktop Runtime.

Microsoft’s installation guidance distinguishes them:

  • Desktop Runtime → Windows desktop applications;
  • ASP.NET Core RuntimeASP.NET Core web/server applications.

Do not install ASP.NET Core Runtime just because a Windows desktop application says it needs Microsoft.WindowsDesktop.App.


What Is the Hosting Bundle?

The ASP.NET Core Hosting Bundle is mainly relevant to Windows servers running ASP.NET Core applications behind IIS.

It is not the normal package for a WPF or WinForms desktop application.


Can .NET Desktop Runtime Be Installed With Winget?

Yes.

Microsoft supports installing .NET through Windows Package Manager (WinGet).

For example, administrators can search available packages with:

 
winget search Microsoft.DotNet
 

Then install the correct Microsoft package for the required runtime family.

Because package identifiers can change between releases, verify the current package name before automating deployment.


Can .NET Desktop Runtime Be Installed With PowerShell?

Yes.

Microsoft supports automated .NET installation methods, including PowerShell-based installation options.

This can be useful for:

  • technicians;
  • administrators;
  • lab systems;
  • automated deployment;
  • RDS servers;
  • software prerequisites.

For large environments, prefer managed deployment rather than manually installing runtimes one PC at a time.


.NET Desktop Runtime on RDS and Windows Server

The Desktop Runtime can also be required on:

  • Windows Server;
  • Remote Desktop Session Hosts;
  • Terminal Servers;
  • multi-user business systems.

If a line-of-business application requires .NET Desktop Runtime, install the required runtime system-wide using administrative privileges.

Then test the application using a normal non-admin user session.


Important RDS Consideration

On an RDS server, determine:

  • whether the application is x86 or x64;
  • which .NET major version it requires;
  • whether all users use the same application version;
  • whether vendor upgrades change the prerequisite;
  • whether the application ships a self-contained runtime.

A single missing runtime can affect many users simultaneously.


Should I Install Both x86 and x64 on an RDS Server?

Sometimes yes.

If the server hosts both:

  • 64-bit .NET desktop applications;
  • 32-bit .NET desktop applications;

both x64 and x86 runtimes may be required.

Do not install extra architectures purely by habit; check the software requirements.


Can I Uninstall Old .NET Desktop Runtime Versions?

Possibly, but be careful.

Older applications may still depend on them.

Before uninstalling:

  1. check installed applications;
  2. check vendor requirements;
  3. run:
 
dotnet --list-runtimes
 
  1. identify which runtime families are installed;
  2. verify whether any software requires the older version.

Uninstalling the wrong runtime can cause applications to stop launching.


Why Are There So Many Microsoft .NET Entries in Installed Apps?

This is often normal.

You may have:

  • multiple .NET major versions;
  • x64 runtimes;
  • x86 runtimes;
  • Desktop Runtime;
  • ASP.NET Core Runtime;
  • SDK versions;
  • servicing updates.

For example:

 
Microsoft .NET Runtime 8
Microsoft Windows Desktop Runtime 8
Microsoft ASP.NET Core 8
Microsoft Windows Desktop Runtime 9
Microsoft .NET SDK 10
 

These are different components.

Do not delete them simply because they appear redundant.


Is .NET Desktop Runtime Safe?

Yes, when installed from Microsoft.

It is a legitimate Microsoft software component used by many Windows applications.

Download it from:

  • Microsoft’s official .NET website;
  • Microsoft-supported package channels;
  • trusted enterprise deployment sources.

Avoid unknown third-party “runtime download” sites.


Does Windows 11 Already Include .NET Desktop Runtime?

Do not assume that every modern .NET Desktop Runtime version required by every application is already present.

Windows includes various Microsoft frameworks and components, but applications targeting modern .NET may still require installation of a specific supported Desktop Runtime version.

If the application says a runtime is missing, check:

 
dotnet --list-runtimes
 

rather than assuming Windows already includes it.


Does Windows Update Install .NET Desktop Runtime Automatically?

Not in every deployment scenario.

How .NET is installed and serviced can depend on:

  • installer method;
  • Windows servicing;
  • Microsoft Update configuration;
  • enterprise management;
  • Visual Studio;
  • application-bundled runtime;
  • package manager deployment.

Therefore it is better not to make the blanket claim that every .NET Desktop Runtime is automatically installed or updated through Windows Update.


Can Installing .NET Desktop Runtime Damage Windows?

Normally no.

It is designed to install side by side with supported .NET runtime versions.

The bigger risk is uninstalling or modifying required runtime components without understanding application dependencies.


Does .NET Desktop Runtime Slow Down Windows?

Simply having the runtime installed generally does not mean it continuously consumes significant CPU or RAM.

The runtime is used when a .NET application runs.

If a specific .NET application is consuming excessive resources, troubleshoot the application and its workload rather than assuming the installed runtime itself is permanently using those resources.


How to Repair a Broken .NET Desktop Runtime Installation

If the required runtime is installed but an application still fails:

1. Check installed runtimes

 
dotnet --list-runtimes
 

2. Confirm version

Make sure the required:

 
Microsoft.WindowsDesktop.App
 

major version exists.

3. Confirm architecture

Check whether the application is x64 or x86.

4. Reinstall the matching Desktop Runtime

Download the current supported installer for that runtime family from Microsoft.

5. Restart Windows if necessary

6. Test the application again

If only one particular application fails, investigate that application before repeatedly reinstalling .NET.


What If the dotnet Command Is Not Recognized?

If:

 
dotnet --list-runtimes
 

returns:

 
'dotnet' is not recognized...
 

possible explanations include:

  • .NET is not installed system-wide;
  • PATH is incorrect;
  • only an application-private runtime exists;
  • installation is damaged;
  • wrong shell/environment.

Check whether:

 
C:\Program Files\dotnet
 

exists.

Then verify your application’s exact runtime requirement.


What If Only One Application Has the Error?

If every other .NET application works but one application fails, possible causes include:

  • application-specific runtime version requirement;
  • application architecture mismatch;
  • damaged application files;
  • incorrect runtimeconfig file;
  • vendor packaging issue;
  • incomplete update;
  • plugin/add-on issue.

Check the error text and application vendor documentation.


What Is runtimeconfig.json?

Framework-dependent .NET applications commonly use configuration information that tells .NET which runtime/framework the application expects.

You may see a file similar to:

 
MyApplication.runtimeconfig.json
 

near the application executable.

Advanced technicians can inspect it to identify runtime requirements.

Do not edit it casually.


Example runtimeconfig.json

A simplified example might resemble:

 
{
  "runtimeOptions": {
    "tfm": "net8.0-windows",
    "framework": {
      "name": "Microsoft.WindowsDesktop.App",
      "version": "8.0.0"
    }
  }
}
 

This would indicate that the application expects a Windows Desktop framework based on .NET 8.


Common .NET Desktop Runtime Errors

Common symptoms include:

“You must install or update .NET”

Usually indicates that the required runtime family is missing.

Microsoft.WindowsDesktop.App was not found”

Usually indicates the Desktop Runtime is missing or incompatible.

Application Opens and Immediately Closes

Could be runtime-related, but may also be an application error.

Error After Software Update

The vendor may have changed the application's target from one .NET version to another.

Works on One PC but Not Another

Compare installed runtimes using:

 
dotnet --list-runtimes
 

on both computers.


Recommended Technician Workflow

When a program reports a .NET runtime error:

  1. Read the exact error.
  2. Identify the framework name.
  3. Identify the requested version.
  4. Identify the architecture.
  5. Run:
 
dotnet --list-runtimes
 
  1. Check for:
 
Microsoft.WindowsDesktop.App
 
  1. Install the matching stable Desktop Runtime from Microsoft.
  2. Restart the application.
  3. If still failing, investigate application-specific issues.

This is much safer than installing every .NET package you can find.


.NET Runtime Troubleshooting Example

Suppose:

 
Application: AccountingTool.exe
Error: Microsoft.WindowsDesktop.App 8.0.0 x86 not found
Windows: 64-bit
 

You run:

 
dotnet --list-runtimes
 

and find:

 
Microsoft.WindowsDesktop.App 8.0.20 [x64]
 

but the application is 32-bit.

Installing the correct x86 Desktop Runtime may resolve the problem.

The key lesson is:

Same version number does not always mean correct architecture.


Can Developers Just Install the SDK?

Yes, developers often use the SDK because it includes the required runtime components. Microsoft states that the SDK includes the .NET Runtime, Desktop Runtime and ASP.NET Core Runtime.

But for customer computers:

Install only the runtime required to run the software unless development tools are actually needed.


Should Software Vendors Bundle the Runtime?

Developers have several deployment choices.

They can publish applications as:

  • framework-dependent;
  • self-contained.

A self-contained build can reduce end-user runtime prerequisites but increases application size and changes servicing/deployment considerations.

A framework-dependent build is smaller but relies on an appropriate installed runtime.

Both are valid approaches.


.NET Desktop Runtime vs SDK vs ASP.NET Core Runtime

Feature Desktop Runtime Base Runtime ASP.NET Core Runtime SDK
Run WPF apps Yes No No Yes
Run Windows Forms apps Yes No No Yes
Run console apps Yes Yes Not its main role Yes
Run ASP.NET Core apps No by itself No Yes Yes
Build .NET apps No No No Yes
Typical end-user install Windows desktop apps Console/service apps Web/server apps Developers

Frequently Asked Questions

1. What is Microsoft .NET Desktop Runtime?

It is the Microsoft .NET runtime package used to run Windows desktop applications built with technologies such as WPF and Windows Forms.

2. Do I need .NET Desktop Runtime?

You need it if a framework-dependent Windows desktop application requires it.

3. Is .NET Desktop Runtime safe?

Yes, when obtained from Microsoft.

4. Is it already included in Windows?

Do not assume the exact modern .NET version required by an application is preinstalled. Check your installed runtimes.

5. How do I check installed .NET Desktop Runtime versions?

Run:

 
dotnet --list-runtimes
 

and look for:

 
Microsoft.WindowsDesktop.App
 

Microsoft documents this command for detecting installed runtimes.

6. What is Microsoft.WindowsDesktop.App?

It is the shared .NET desktop framework used by Windows Forms and WPF applications.

7. What is the difference between .NET Runtime and Desktop Runtime?

Desktop Runtime includes the base .NET Runtime plus Windows desktop libraries such as WPF and Windows Forms support.

8. Do I need both .NET Runtime and Desktop Runtime?

Usually not for a Windows desktop application, because Microsoft states that Desktop Runtime includes the base .NET Runtime.

9. What is the .NET SDK?

It is the development toolkit used to build .NET applications.

10. Do normal users need the SDK?

Usually no.

11. Why are multiple .NET versions installed?

Different applications may target different runtime families, and .NET supports side-by-side installations.

12. Can .NET 10 replace .NET 8?

Not universally. An application may specifically target the .NET 8 runtime family.

13. Do I need x64 or x86?

Install the architecture required by the application.

14. Can I install x86 Runtime on 64-bit Windows?

Yes, when a 32-bit application requires it.

15. What is Arm64 Desktop Runtime?

It is the runtime build for Windows computers using ARM64 processors.

16. Why does the application still say .NET is missing?

You may have installed the wrong version, wrong architecture or wrong runtime type.

17. Is Desktop Runtime the same as .NET Framework?

No.

18. Is Desktop Runtime the same as Windows App Runtime?

No.

19. Does Desktop Runtime include WPF?

Yes.

20. Does Desktop Runtime include Windows Forms?

Yes.

21. Should I uninstall old .NET versions?

Only after confirming no software still depends on them.

22. Does .NET Desktop Runtime use lots of RAM?

The installed runtime does not simply consume large resources continuously. Resource use mainly occurs when applications using it are running.

23. Can .NET Desktop Runtime be installed on Windows Server?

Yes, when supported applications require it.

24. Can RDS servers use .NET Desktop Runtime?

Yes. Install the required system-wide runtime and test with standard user sessions.

25. What is the safest solution when an application asks for .NET?

Install the exact supported .NET Desktop Runtime major version and architecture requested by the application from Microsoft.


Quick Command Reference

List installed runtimes

 
dotnet --list-runtimes
 

Show .NET environment details

 
dotnet --info
 

List installed SDKs

 
dotnet --list-sdks
 

Show the selected SDK version

 
dotnet --version
 

Remember:

dotnet --version is mainly about the SDK.

dotnet --list-runtimes is the command you want when troubleshooting missing runtime errors.


Final Recommendation

When a Windows application reports a missing .NET runtime, do not blindly install every available Microsoft .NET package.

Use this process:

 
Read the application error
        ↓
Identify Microsoft.WindowsDesktop.App
        ↓
Check required major version
        ↓
Check x64 / x86 / ARM64
        ↓
Run dotnet --list-runtimes
        ↓
Install matching .NET Desktop Runtime
        ↓
Restart application
 

The most important distinction is:

.NET Desktop Runtime = run WPF/Windows Forms desktop applications

.NET Runtime = run other .NET applications

ASP.NET Core Runtime = run ASP.NET Core web/server applications

.NET SDK = develop and build applications

For most ordinary Windows users who receive a missing Microsoft.WindowsDesktop.App error, the correct solution is the .NET Desktop Runtime, not the SDK.


Technical Disclaimer

.NET releases, supported versions, patch levels and installation methods change over time.

Always verify:

  • the application vendor’s requirements;
  • supported .NET version;
  • required architecture;
  • current Microsoft support status;
  • the current stable Microsoft installer.

For production servers and business-critical systems, test application compatibility before removing existing .NET runtimes.

What Is .NET Desktop Runtime? Install, Check Version & Fix Errors

Learn what Microsoft .NET Desktop Runtime is, which version you need, x64 vs x86, how to check installed runtimes and fix Microsoft.WindowsDesktop.App or “install .NET” errors.

 

YOUR FEEDBACK

Was this guide useful?

Your answer helps us keep BISONKB accurate and practical.

THE BISON BRIEF

Practical IT knowledge, once a week.

New troubleshooting guides, scripts and infrastructure notes. No noise.

By subscribing, you agree to our privacy policy. Unsubscribe at any time.