ASP.NET is a Microsoft web application framework that allows creation of dynamic web applications and services. It provides separation of code from HTML, support for compiled languages, and state management. An ASP.NET file contains HTML, XML, and server-side scripts that are executed on the server. IIS (Internet Information Services) is the Microsoft web server that hosts ASP.NET applications. It passes ASP.NET file requests to the ASP.NET engine, which executes the scripts and returns HTML to the browser.