.NET is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.
.NET Framework is the original implementation of .NET. It supports running websites, services, desktop apps, and more on Windows. .NET Framework 4.8 is the last version of .NET Framework
.NET Core is a cross-platform implementation for running websites, services, and console apps on Windows, Linux, and macOS. .NET is open source on GitHub.
|Version||Latest Version||Visual Studio|
|.NET 5||VS 2019|
|.NET Core 3.x – latest||VS 209|
|.NET Core 2.x||VS 2017, 2019|
|.NET Core 1.x||VS 2017|
Both, .NET 3.1, and .NET Core 2.1 will have long term support.
.NET Core 3.x applications only run on .NET Core Framework.
.NET Core 2.x applications run on .NET Core as well as .NET Framework.
.NET Standard is a formal specification of the APIs that are common across .NET implementations. This allows the same code and libraries to run on different implementations.
.Net Framework and .Net core have different BCLs, hence .Net Framework library is not compatible with .Net core and vice versa. To solve this problem Microsoft introduced .Net standard.
For example, to develop a library that supports .NetFramework 4.5.1 and .Net Core 1.0, we need to target .Net Standard 1.2 i.e. the lowest .NetStandard version that the 2 frameworks implement.
Xamarin/Mono is a .NET implementation for running apps on all the major mobile operating systems, including iOS and Android.
C# Version History
|Version||.NET Framework||Visual Studio||Important Features|
|C# 1.0||.NET Framework 1.0/1.1||Visual Studio .NET 2002||First release of C#|
|C# 2.0||.NET Framework 2.0||Visual Studio 2005||
|C# 3.0||.NET Framework 3.0\3.5||Visual Studio 2008||
|C# 4.0||.NET Framework 4.0||Visual Studio 2010||
|C# 5.0||.NET Framework 4.5||Visual Studio 2012/2013||
|C# 6.0||.NET Framework 4.6||Visual Studio 2013/2015||
|C# 7.0||.NET Core||Visual Studio 2017||