ASP.NET can be built from any language that has been integrated into the .NET framework. A non-exhaustive list includes C#, VB.NET, Python, C++, more
These .NET languages allow for OOP and managed code, while classic ASP relies on COM and ActiveX to build re-usable libraries or tools.
.NET has additional methods to persist data in addition to the Session variables commonly used in classic ASP. These include ViewState and ControlState. This means that some of the tedious work from ASP such as storing information in hidden variables and then re-populating and updating these values with each post or get is automatically handled by ASP.NET. Additionally, .NET has an event-driven lifecycle for the page, meaning that specific events on the page such as clicking a button can be handled individually.
.NET pages are structured as objects with functions, methods, properties, and events instead of the global free for all that occurs in most classic ASP pages.
ASP.NET has built in controls that handle much of the everyday tasks required in an html page. For example a GridView control can be used to build a table of data that is linked to a datasource. The datasource can also be a control. The benefit of using these controls is that they handle the low-level html generation and allow the developer to spend more time on working out logic and styling instead of having to worry about missing </tr> or </td> tags, etc.
Both are run on a server through IIS (or some similar method) and generate html that is returned to the client.
The VBScript syntax is basically the same as VB.NET.
Data is passed back and forth routinely through Request.Form or Request.QueryString; however, ASP.NET can directly access controls on the page. Shweta_Pinky, if this helps please login to Mark As Answer. | Alert Moderator