a) You were right. ASP or classic ASP is a scripting langauge. It typically uses VBScript to create server pages.
b) ASP.NET is the replacement for ASP but it is more powerful. ASP.NET provides 3 main web development frameworks on top of it such as WebForms, Web Pages and MVC. In other words, MVC sits on top of ASP.NET framework. Razor is a view engine (like ASPX view engine in WebForms and MVC 1) it replaces the ASPX view engine used in ASP.NET MVC 1 to help developers build UI(Views) much easier.
c) DotNet is the heart of all frameworks. It provides the infrastructure for building, deploying, and running applications and services that use .NET technologies, such as desktop applications and Web services. The .NET Framework contains three major parts: the Common Language Runtime ,the Framework Class Library and ASP.NET.
I would reall suggest you to head over to getting started section of ASP.NET to learn about the framework and technologies it offers:
Get Started with ASP.NET | The ASP.NET Site[
^]