ASP.NET represents the standard webforms where controls are bundled with the framework, its main job is to transform to HTML code that will be displayed at client side, hard to maintain and getting complex for single page apps.ASP.NET MVC is following MVC architecture where Controller is responsible to map data from Models into Views .. separation of concerns and decoupled components. It is more lighter than standard ASP.NET and easier to maintain but it needs a robust and good understanding of HTML, CSS, Javascript.ASP.NET Core is the new framework that is built on top of .NET Core which is cross-platform, which means it can work in Windows, Linux, Mac...etc. .NET Core is open-source framework and is built without so many components that are windows-specific ones like WPF and Desktop applications. it is more modular than standard ASP.NET MVC as you as developer will inject only what you are going to use and that actually makes your application more lighter and faster.