ASP і ASP.Net є дуже різними мовами програмування. ASP це сценарій мови, де як ASP.NET - це веб-формулювання складеної мови (Visual Basic, C #, J #, C ++, .Net). Більше того, на відміну від ASP, ASP.NET - це об'єктно-орієнтована мова.
повідомити про це оголошенняASP запускається в просторі процесу inetinfo.exe (IIS) і тому сприйнятливий до збоїв додатків через зупинку або перезапуск IIS..
З іншого боку, робочий процес ASP.NET - це окремий процес (aspnet_wp.exe), окремий від процесу IIS inetinfo.exe. Модель процесу в ASP.NET не пов'язана з налаштуваннями ізоляції процесів у IIS.
Коли запитується традиційна сторінка ASP, текст цієї сторінки аналізується лінійно. Весь вміст, який не є стороннім сценарієм, відображається як -повернення до відповіді. Весь скрипт на стороні сервера на сторінці спочатку запускається через відповідний інтерпретатор (JScript або VBScript), вихід якого повертається у відповідь.
На відміну від цього, сторінки ASP.NET завжди компілюються у класи .NET, розміщені в межах збірок. Цей клас включає весь код на стороні сервера та статичний HTML, тож після першого доступу до сторінки (або до будь-якої сторінки в певному каталозі) подальше рендеринг цієї сторінки обслуговується виконанням компільованого коду. Це виключає всю неефективність сценарійної моделі традиційного ASP.
Оскільки ASP передбачає інтерпретацію сценаріїв, налагодження складно. Але з ASP.NET усі інструменти, доступні розробнику .NET, застосовні до розробника .aspx. Помилки зі сторінками генеруються як помилки компілятора, і є велика ймовірність, що більшість помилок буде знайдено під час компіляції замість часу виконання, оскільки VB.NET та C # - це сильно набрані мови.