.NET is an open-source development platform by Microsoft for creating and running various applications and services such as web, desktop, mobile, gaming, AI, Machine learning, and IoT. The platform is free to use and an integral unit of Microsoft Windows OS. You can use C#, F#, and Visual Basic to build the apps in .NET. Moreover, the platform comes with three high-level components to run the code on any of these operating systems:
1) .NET Framework for websites, services, and applications on Windows
2) .NET Core for websites, servers, and applications on Windows, Linux, and macOS
3) Xamarin for mobile application development on Windows Mobile, Android, and iOS
The .NET components share the same set of APIs as the .NET Standard. Also, both .NET Framework and .NET Core share many of the same elements while allowing you to share the code across them. However, there exist fundamental differences between these two .NET components and the choice depends on what you want to achieve out of them.
The .NET Core overview
It is a .NET Foundation project used for developing various solutions including device, cloud, IoT and more. Being a cross-platform framework, it uses UWP (Universal Windows Platform) for Windows app creation and ASP.NET Core for developing browser-based web apps.
It is a runtime environment for creating web services and Windows applications through WPF (Windows Presentation Foundation), Windows Forms, and UWP. However, the ASP.NET MVC helps create web apps.
It comes with two main components: