Search notes:
.NET implementations
Some common .NET implementations are
.NET Framework | The original .NET implementation whose first release was 2002. Runs on Windows only and is optimized for developing Windows desktop applications. |
.NET Core | A cross platform implementation (Windows, Linux, macOS) |
Mono | The runtime that powers Xamarin applications (Android, Mac, iOS, tvOS, watch OS) and Unity engine (games). |
UWP | Targets touch-enabled Windows applications (on PCs, tablets, phablets, phones, XBox) and software for the Internet of Thigs (IoT). |
.NET Core is distributed as a set of NuGet packages to individual applications.
The .NET Framework is installed in a system-wide location.
.NET Core is layered.
.NET Core does not have problematic technologies anymore, such as AppDomain or sandboxing.
In .NET Framework applications
C# finalizers are called when the program exits - but not in .NET Core applications.
Components
An implementation includes the following mandatory or optional components
- Runtime (one or more)
- A class library that implements the .NET Standard
- Application frameworks (optional)
- Development tools (optional)
Runtimes
.NET Framwork has the CLR
.NET Core has CoreCLR and CoreRT
Application framworks
Some application frameworks are
- ASP.NET
- Windows Forms
- Windows Presentation Foundation (WPF)
.NET Standard
These APIs are implemented in the Base Class Library of a .NET implementation.
.NET Framwork implements the .NET Standard in version 4.5 and later.