Galvenā atšķirība: ASP apzīmē Active Server Pages. Tas ir pazīstams kā Classic ASP vai ASP Classic. Tā ir servera puses skriptu vide, ko izstrādā un izlaiž Microsoft. ASP.NET ir servera puses tīmekļa lietojumprogrammu sistēma. ASPX apzīmē Active Server Pages Extended. Tā tika izstrādāta Web izstrādei, lai radītu dinamiskas Web lapas. Abi atbalsta sesijas kontekstu. Sesijas objekts saglabā informāciju par lietotāja sesiju vai tās iestatījumus. Būtībā tā atzīmē visu, ko lietotājs redz un dara lapā, jo īpaši visas izmaiņas, ko lietotājs var iekļaut lapā.
ASP galvenokārt tiek izmantota dinamisku, interaktīvu Web servera lietojumprogrammu izveidošanai un darbināšanai. Tas arī ļauj apvienot HTML lapas, skriptu komandas un COM komponentus, lai izveidotu interaktīvas Web lapas un spēcīgas tīmekļa lietojumprogrammas. Tas arī atvieglo minēto tīmekļa lietojumprogrammu izstrādi un modificēšanu.
Pēc sākotnējās izlaišanas ir izlaisti divi versijas. ASP 2.0 ieviesa oriģinālus sešiem iebūvētiem objektiem, kas bija Application, ASPError, Request, Response, Server un Session. ASP 3.0 ieviesa dažus papildu uzlabojumus, piemēram, Server.Transfer metodi, Server.Execute metodi un uzlabotu ASPError objektu. Turklāt ASP 3.0 arī iespējoja buferizāciju pēc noklusējuma un optimizēja dzinēju, lai uzlabotu veiktspēju. Tomēr no 2013. gada maija nav plānoti ASP uzlabojumi.
ASP.NET ir veidota uz kopējās valodu darbības laika (CLR). Tas ļauj programmētājiem rakstīt ASP.NET kodu, izmantojot jebkuru atbalstītu .NET valodu. ASP.NET Web lapas ir arī pazīstamas kā Web veidlapas. Tie satur statisku (X) HTML atzīmi. Tajā ir arī atzīme, kas nosaka servera puses Web Controls un User Controls. Tas ir tas, kur izstrādātāji izvieto visu tīmekļa lapas rc saturu.
ASP.NET Framework 2.0 tika ieviests jauns koda modelis. Tas ļauj statiskajam tekstam palikt .aspx lapā, bet dinamiskais kods paliek .aspx.vb vai .aspx.cs vai .aspx.fs failā. Dinamiskā koda atrašanās vieta ir atkarīga no izmantotās programmēšanas valodas.
Abi atbalsta sesijas kontekstu. Sesijas objekts saglabā informāciju par lietotāja sesiju vai tās iestatījumus. Būtībā tā atzīmē visu, ko lietotājs redz un dara lapā, jo īpaši visas izmaiņas, ko lietotājs var iekļaut lapā. Tam ir priekšrocība, jo gadījumā, ja sistēma sabruks starp izmaiņām, kuras lietotājs mēģināja veikt, izmaiņas netiks zaudētas, kad sistēma atteici. Sesija saglabātu atmiņu par to, kur lietotājs ir atstājis.
Sesija būtībā ir tīmekļa lapas sīkfails. Tā saglabā un izgūst vērtības lietotājam, kad lietotājs pārvietojas tīmekļa lapā. Sesijas objektā saglabātie mainīgie satur informāciju par vienu lietotāju, un tie ir pieejami visām vienas lietojumprogrammas lapām. Daži izplatītie dati, kas saglabāti sesijas mainīgajos lielumos, ir vārds, ID un preferences. Serveris katram jaunam lietotājam izveido jaunu sesijas objektu un iznīcina sesijas objektu, kad sesija beidzas.
Dažas atšķirības starp ASP sesiju un ASP.NET sesiju:
- ASP sesija ir atkarīga no procesa, bet ASP.NET sesija ir procesa neatkarīga.
- ASP sesija ir atkarīga no sīkdatnēm, bet ASP.NET sesija ir neatkarīga no sīkdatnēm.
- ASP sesijas stāvoklim nav raksturīga risinājuma, lai strādātu ar Web Farms. ASP.NET sesiju var saglabāt valsts serverī un SQL SERVER, kas var atbalstīt vairākus serverus.
- ASP sesija darbojas tikai tad, kad pārlūks atbalsta sīkdatnes, ASP.NET sesija darbojas neatkarīgi no tā.
- ASP sesijas stāvoklis ir ļoti atkarīgs no IIS procesa. Ja IIS restartējas, arī ASP sesijas mainīgie tiek pārstrādāti. Tā kā ASP.NET sesija var būt neatkarīga no uzņemšanas vides, ASP.NET sesija var tikt saglabāta pat tad, ja IIS pārstartē.
- ASP sesija saskaras ar serveru saimniecību ierobežojumiem. Tā kā lietotāji pāriet no servera uz serveri Web servera fermā, to sesijas stāvoklis tos neievēro. ASP.NET sesijas stāvoklī ir atbalsts serveru saimniecību konfigurācijām. Tā pārceļas uz ārpusprocesa modeli, tāpēc tā nesaskaras ar serveru saimniecības problēmu.