.NET Runtime Host (dotnet.exe)
dotnet.exe is the Microsoft .NET runtime host responsible for launching and executing .NET applications and CLI tools. It acts as the universal launcher for apps built with .NET Core, .NET 5/6/7+, and supports running self-contained or framework-dependent deployments. It loads the runtime, resolves libraries, and starts the program.
dotnet.exe hosts the CLR for .NET apps, loads assemblies, enforces runtime configurations, and begins execution with the app’s entry point. It negotiates the correct framework version via runtimeconfig.json and coordinates garbage collection, JIT, and native interop during startup.
Reasons it's running:
dotnet.exe is the Microsoft .NET runtime host used to launch and run .NET Core/5+ applications and CLI tools. It is a legitimate system component when installed from official Microsoft packages.
No, dotnet.exe is a legitimate component of the .NET runtime. Verify it is located in C:\Program Files\dotnet and digitally signed by Microsoft to rule out malware.
It runs when you execute a .NET application, use dotnet CLI commands, or host ASP.NET Core apps. It may also run during development if IDEs spawn dotnet-based tasks.
Most often it is located at C:\Program Files\dotnet\dotnet.exe. Other legitimate copies may exist in specific SDK or runtime folders, but the official one is under Program Files.
Update via the official .NET download page from Microsoft, or use the latest SDK if you are developing, ensuring PATH and global.json align with your project.
You can uninstall the .NET runtimes/SDKs if no apps require them, but many apps depend on it. Remove with care and verify all essential apps still function afterward.