I just got a question to answer in a forum Post– What is the difference between ASP.NET and ASP.NET Core, and what should I choose to build my next Web application?

Another question, I saw was: Should I choose ASP.NET Core over ASP.NET in my next project?

On reading this article you will be able to know some of the pros and cons that might get you closer in deciding between ASP.NET and ASP.NET Core.

.NET Architecture

Let’s review the following .NET Architecture diagram.

 

             ASP.NET or ASP.NET Core? Which One to Choose?

 

As you can see from the above diagram, the .NET ecosystem has three major high-level components: .NET Framework, .NET Core, and Xamarin.

The .NET Framework is used to develop Windows applications using WPF and Windows Forms and Web applications, using ASP.NET MVC.

.NET Core supports UWP and ASP.NET Core libraries. Windows 10 targeted apps are build using UWP and ASP.NET Core is used to build Web apps for Windows, Linux, and Mac operating systems. 

Choosing between ASP.NET MVC and ASP.NET Core

ASP.NET Core is one of the key components of .NET Core to build Web applications, using ASP.NET.

 In an article Should I Use ASP.NET Core or MVC 5, Jeff Fritz from Microsoft writes:

“Both frameworks will still be supported in at least 4 years. Both frameworks have an MVC approach to coding and both use a very similar Razor templating language.” 

The following table is a list of key takeaways from Jeff’s article: 

 Feature

 ASP.NET MVC or ASP.NET Core

 Stable framework

 ASP.NET MVC

 Raw performance

 ASP.NET Core

 Tested and proven for a decade

 ASP.NET MVC

 Leading edge, continuous learning, and upgrades

 ASP.NET Core

 Target multiple operating systems

 ASP.NET Core

 Windows container model support

 Both

 Share components across various platforms – Web server, Mac, iOS, Android, XBox, Windows Mobile, Windows desktop, Unity

 .NET Standard with either.

 

Students vs Professional Developers

For professional developers, if you’re building a new website and you have to make a choice today, here are some scenarios. 

ASP.NET Core is a better choice, if you -

  •  Want to target your Web app on Windows, Linux, and Mac operating systems.
  •   Aren’t afraid of learning new things.
  •   Aren’t afraid of breaking and fixing codes since ASP.NET Core is not fully matured yet. 

ASP.NET MVC is a better choice if you -

·         Don’t need a cross-platform support for your Web app.

·         Need a stable environment to work in.

·         Have nearer release schedules.

·         Are working on an existing app and extending its functionality?

·         Already have an existing team with ASP.NET expertise. 

For students, if you’re just learning and have no plans to join a company for the next year or so, ASP.NET Core is a better choice for you. It will give you more options to choose from in the near future. 

Porting ASP.NET MVC to ASP.NET Core

The following document lists the process and tools of migrating your existing ASP.NET MVC project to ASP.NET Core.

https://docs.microsoft.com/en-us/dotnet/articles/core/porting/index

  Modified On Mar-20-2018 02:30:33 AM
  1. It was really helpful to read this post.

    Your blog always have updated content.

Leave Comment