.NET Framework? .NET Core? .NET?

.NET Framework? .NET Core? .NET?

Start using the right one! ๐Ÿš€

ยท

3 min read

TL;DR

  • .NET Framework

The first version of .NET, there will be no new versions but it has extended support.

  • .NET Core

Successor to the .NET Framework, cross-platform and open source.

  • .NET

Short for .NET Core, Microsoft promotes it that way now, and it's the term we should be using for new projects.

  • .NET Standard

Set of API specifications implemented by all the runtimes.

Desktop Wallpaper - Large-02.png

Sometimes these terms are confusing, but once you understand them you will gain extra confidence when you talk about this topic with colleagues or in technical interviews.

.NET Framework

Development environment/platform that provides libraries to develop software in an easier and faster way, it was created and promoted by Microsoft, its first production version was released on February 13, 2002, available only for the Windows platform in its versions 98, ME, NT 4.0, 2000 and XP.

The latest version of the .NET Framework is 4.8, it was released on April 18, 2019, and an end-of-support date has not been announced yet.

".NET Framework 4.8 is the last version of .NET Framework. .NET Framework is serviced monthly with security and reliability bug fixes. .NET Framework will continue to be included with Windows, with no plans to remove it. You don't need to migrate your .NET Framework apps, but for new development, use .NET 5 or later."

-- Microsoft Docs

.NET Core

Although it is true that .NET Framework is a robust and mature environment that has proven to be stable and easy to adapt to, it had, among other things, the limitation of being only compatible with Windows.

This is fixed in .NET Core, which among many other things is cross-platform and open source.

While .NET is cross-platform, you can still access some Windows-specific APIs configuring your target framework.

.NET

Starting with .NET Core 5.0, Microsoft started calling it simply ".NET".

They basically renamed .NET Core to just .NET ๐Ÿ˜†

.NET Standard

Due to all the runtimes that there were, people began to create code that only worked in some, to fix this, .NET Standard was created.

Is not something that you install, but a formal specification of APIs that you can use, with the purpose of sharing code between runtimes.

Use .NET Standard when you want to share code within the .NET Ecosystem's various runtimes.

What should I use?

As a general rule for new developments, .NET should be used, and only use .NET Framework if you necessarily want to use technologies not supported in .NET such as WCF, web forms, or very specific Windows APIs.

That's all!

I recommend reading this part of the documentation for a broader understanding of the subject โœจ

Thanks for reading! Follow this blog for more content on .NET and occasionally JavaScript/Go ๐Ÿš€

I started learning .NET a couple of days ago and everything is going great, I also made a blog about the best way to create a gitignore for .NET projects ๐Ÿ”ฅ

If you find any errors, do not hesitate to comment and I will update the article ๐Ÿš€

Cheers.

ย