What is .NET Core?
.NET Core is a new Microsoft platform, which is modular, cross-platform, open source and has a better support for the Cloud. .NET Core will continue to run on Windows devices, as well as on Linux and Mac OS X. In addition, unlike the .NET 4.6, which is installed machine-wide as single large block, Windows-only runtime environment, .NET Core can be used to create modular libraries and the Applications that can target multiple platforms and be deployed (per-Application), along with the Application itself.
Why .NET “Core?”
Microsoft’s vision of .NET platform evolved over the past 15 years and many technology enthusiasts, leaders and others wanted .NET to be open-source, available to other platforms like Linux and Mac, in addition to currently and widely supported Microsoft Windows.
To accomplish such a large goal and vision, it was necessary to have a “fork in the road” and create a fresh and new version of “.NET” which is named as “.NET Core 1.0”.

Hence, developing the Application, using “.NET Core 1.0” will enable and empower developers to write Applications with one platform; for instance, Microsoft Windows, and when everything is ready, it can run on the multiple platforms. In this case; it is Mac, Linux and Windows of course.
Why Version “1.0?”
The current and latest .NET Framework version is 4.6.x and so the next major release version was supposed be “5” and initially it was called .NET Core 5. Similarly, the next version of ASP .NET 4.5 was named ASP .NET 5 and the next version of Entity Framework 6.1.x was named Entity Framework 7.
This numbering order conveyed the message that these are just the next version of the same framework and technology; whereas the reality is different. “.NET Core” concept is totally new, YES! It's a brand new concept. Hence, the numbering has to be re-started. Therefore:
- .NET Framework 5.0 is now known as “.NET Core 1.0”
- ASP .NET 5.0 is now knows as “ASP .NET Core 1.0”
- MVC 6 is now known as “ASP .NET Core MVC”
- Entity Framework 7 is now known as “Entity Framework Core 1.0”
.NET Ecosystem
With the new launch of .NET “Core” wave of framework and technology, old version .NET 4.6 (which is mature and fully grown) will continue to co-exist. .NET Core can be installed on the same machine. However, .NET Core will have its very own personalized core libraries etc.

.NET Core includes CoreCLR, a more lightweight run time, that provides the basic Services to your Application, which includes automatic memory management and garbage collection, along with a basic type library, unlike .NET 4.6, which has such a large footprint for the same.
.NET Core also includes CoreFx, a set of modular assemblies, that you can add to your project/Application, as per your demand, unlike the .NET Framework 4.x, which always had to make the entire .NET Framework Class Library alias BCL (base class library) available. With .NET Core, you can select only the assemblies that you need. i.e. Windows doesn’t need Web and vice-versa.
.NET Core implementations
Following technologies are currently available in .NET Core wave.
- ASP.NET Core
ASP.NET Core is a modular version of ASP.NET, that combines ASP.NET MVC and the ASP.NET Web API. It runs on both .NET Framework 4.6 and .NET Core 1.0. It is custom designed for building high-performance Cloud Applications. ASP .NET Core should not be considered and taken as a replacement to ASP.NET 4.6 in the .NET Framework 4.6. - .NET Native
.NET Native is a compilation and the deployment technology for Universal Windows Platform (UWP) apps, written in C# and Visual Basic .NET. “.NET Native” compiles apps to the native code and links into an Application's assemblies only those code elements from .NET Core libraries and other third-party libraries, that are actually used. - Universal Windows Platform (UWP) apps
The Universal Windows platform allows you to build a single app, that can run on the Windows desktop, Windows Tablet devices and Windows Phone. These apps can also be placed in the Windows Store. UWP apps are compiled to native code for their target. platforms by .NET Native.
Supported Environments
.NET Core is supported by Microsoft on Windows, MAC OS and Linux. On Linux, Microsoft primarily supports .NET Core running on Red Hat Enterprise Linux (RHEL) and Debian distribution families.
.NET Core currently supports X64 CPUs. On Windows, X86 is also supported. ARM64 and ARM32 are in progress.
A wide array of all the supported platforms are shown in the Table below:

Which one to choose .NET 4.6 or .NET Core
.NET Core is not yet mature. Until it’s fully mature and time-tested; in my view, it’s not advisable to start building Enterprise LOB (line of business) Applications, using .NET Core. Hence, .NET 4.6 and ASP .NET 4.6 are more mature and time-tested until .NET Core becomes mature.
The Future of .NET
“.NET Core” is certainly the future of the .NET platform, but we are not there yet. It will be a while until this is widely accepted and the industry really starts to mold and accept its advantages, in order to become more open to build light-weight, cross-platform applications, using .NET. However, Microsoft envisions to continue with ASP .NET 4.6, as well. ASP .NET Core 1.0 is not an end for .NET 4.6 /ASP .NET 4.6. Instead, it’s a new beginning.

Dinesh GabhanePosted Nov 8, 2019, 1:05 AM
Nice Article
Anu VPosted Sep 24, 2016, 8:22 AM
Nice..
Rajib Das GuptaPosted Jul 13, 2016, 9:55 AM
Nice
Asad AliPosted Jul 13, 2016, 4:55 AM
Good one
Ravi PatelPosted Jul 13, 2016, 1:39 AM
Thanks a lot for great article
Bhavik PatelPosted Jul 12, 2016, 9:15 PM
Nice share
Ehsan SajjadPosted Jul 12, 2016, 4:27 PM
Will Microsoft keep both maintained for future or it will just continue .Net core ? I mean new versions of .Net will be released separately for regular and .Net Core ?
Shobana JPosted Jul 12, 2016, 4:03 AM
Good one
Vishal PatelPosted Jul 12, 2016, 1:36 AM
Nice article....
kalu singh raoPosted Jul 12, 2016, 1:25 AM
Nice...
Raja TPosted Jul 12, 2016, 12:30 AM
Nice..thanks for sharing
Manoj KulkarniPosted Jul 11, 2016, 11:15 PM
Nice article. Thank you for sharing
Santhakumar MunuswamyPosted Jun 25, 2016, 12:41 AM
Thank you for good article sir
Digambar MallaPosted Jun 24, 2016, 5:22 AM
.NET for all platform, finally...
Guest UserPosted Jun 22, 2016, 11:17 PM
Agreed , future is .Net core.
Brij MishraPosted Jun 22, 2016, 11:09 PM
Very well explained!! Thanksa lot Sir for sharing
Indraneel PolePosted Jun 22, 2016, 2:07 PM
.NET Core has better support for cloud?! Not really.
Ravi PatelPosted Jun 22, 2016, 6:46 AM
Informative post
RakeshPosted Jun 22, 2016, 2:38 AM
Good information share sir
RajaPosted Jun 22, 2016, 2:03 AM
Great...
Vithal WadjePosted Jun 22, 2016, 1:26 AM
Excellent article . .NET core will be future once it fully matured.
Francis SusaimichaelPosted Jun 21, 2016, 11:17 PM
I hope, the ASP.Net "naming" changed from : VNext -> ASP.Net 5 -> .Net Core 1.0. Correct me if i'm wrong. :)
Vignesh ManiPosted Jun 21, 2016, 5:02 PM
Good one
Muhammad Aqib ShehzadPosted Jun 21, 2016, 2:14 PM
informative post
Prakash TripathiPosted Jun 21, 2016, 10:54 AM
Pretty informative. Is RC version out for .NET core?
vaibhav mahajanPosted Jun 21, 2016, 10:29 AM
I think dot net developers gonna get good number of conversion/migration projects due to cross-platform feature.
Debasis SahaPosted Jun 21, 2016, 9:28 AM
Thanks for the share..
Asad AliPosted Jun 21, 2016, 8:55 AM
A good share
Afzaal Ahmad ZeeshanPosted Jun 21, 2016, 8:24 AM
Besides, you missed one point: Programming for .NET Core is double fun, you can start a project on your Windows environment and continue on your Mac environment in your office! All with the same tools, Visual Studio Code, .NET Core compilers and the terminal controls. A good post, Vidya! :-)
Akshay PhadkePosted Jun 21, 2016, 8:13 AM
Yes Mahesh Chand Sir .NET Core will be huge hit in coming years as it will run on ALL platforms . Specially in banking sector where Java is Preferred more becuase of its cross platform with .NET Core it gives plenty of options to Choose . Vidya Vrat Agarwal Sir Informative Writeup ..:)
Mahesh ChandPosted Jun 21, 2016, 7:32 AM
When fully matured, there will be no "regular .NET". It will just be .NET Core. It is going to be huge because it is open source and can build any kind of apps and can run anywhere. This is the future of .NET. Good start Vidya.
Suthish NairPosted Jun 21, 2016, 2:20 AM
Good Share... Does this means, .Net core is just an new version with multi platform support only and Microsoft wants to stop the numbering process etc. But its sure .Net core is a good thinking from Microsoft.