.NET:
.NET is a platform for building anything. It is also referred to as an ecosystem because it has languages (C#, F#, VB, etc.), runtimes, editors, and libraries to build for web, mobile, desktop, games, and IoT.
- CLR, common language runtime — similar to JVM
- Nuget — similar to npm
- dotnet — cli
- ASP — similar to express
ASP.NET Core is a framework using C#.
- It's a competitor to Spring, Laravel, Flask, Express, etc.
- ASP stands for 'active server pages'
- ASP.NET Core is the open-source, cross-platform version of ASP
- ASP.NET Core is a full-stack environment. It serves server-side rendered dynamic web pages (using Razor) and it handles database and business logic
- It can be combined with frontend technologies like React
MVC:
MVC is an architectural design pattern that enforces separation of concerns. It focuses on the separation of concerns between business logic and interface.
- Model — classes that manage the behaviour and data. Interacts with the database
- View — web pages that manage the presentation of data (Razor HTML). It typically receives a list of data from the controller and interpolates them in an HTML template
- Controller — the 'middle man' that connects models, business logic, web pages.
- Processes user requests
- Retrieves data from the model and passes it to the view


MVC architecture is not strict, diagrams vary almost always.
Razor Pages:
An ASP.NET page is a web page that mixes HTML with dynamic ASP markup.