ASP.NET
Initially it was what we call Webforms today. Webforms was used a lot, but it has already fallen into disuse and, apparently, fell into the disgust of the staff. I can’t say in detail, but the idea of Webforms was to build a web application that was more like desktop applications, trying to maintain status. You can see some status information on What is a "stateless protocol", like HTTP?.
Nowadays the name represents more the platform itself. So much so that, in Visual Studio, to create a web application it is first necessary to choose the type ASP.NET Application and only then you need to specify if it is Webforms, MVC, Webapi, etc.
Each of these "types" has a different way of working, ranging from the philosophy and pattern of the project to how the code is written.
ASP.NET MVC
It is an ASP.NET "project type" that follows the MVC (Model-View-Controller) standard - you can read more about the MVC standard in What is MVC(Model, View, Controller)?. In it is practically intrinsic the ASP.NET Razor (I speak below about it) as view engine, in the old versions it was still possible to choose between the Razor and calls itself ASPX (which also ended up falling into disuse).
ASP.NET Webapi
It is also a type of ASP.NET project that aims to meet HTTP requests (as well as ASP.NET MVC), but without having to worry about the views (unlike ASP.NET MVC).
Anyway, the organization of the project is very similar to that of ASP.NET MVC.
ASP.NET Core
is the new ASP.NET. Yes, the framework has been redesigned and rewritten (as well as .NET Framework). It has had other names like: ASP.NET vNext or ASP.NET 5, as can be seen here.
ASP.NET Razor
Is the view engine behind ASP.NET MVC applications (and also in Core applications). This tool is responsible for rendering the code written in the files .cshtml, .vbhtml and related to HTML code. For more details on view Engines you can read the question What is an Engine?, more specifically the maniero’s response who talks about Razor himself.
In ASP.NET Core, there is also ASP.NET Razor Pages. It is a kind of simplification of what already exists in ASP.NET Core MVC. It is recommended for simpler cases that do not need all the MVC bureaucracy.