To understand why ASP.NET was created, it helps to understand the problems of early web
development technologies. With the original CGI standard, for example, the web server must
launch a completely separate instance of the application for each web request. If the website
is popular, the web server struggles under the weight of hundreds of separate copies of the
application, eventually becoming a victim of its own success. Furthermore, technologies such
as CGI provide a bare-bones programming environment. If you want higher-level features, like
the ability to authenticate users, store personalized information, or display records you’ve
retrieved from a database, you need to write pages of code from scratch. Building a web application
this way is tedious and error-prone.
To counter these problems, Microsoft created higher-level development platforms, such
as ASP and ASP.NET. Both of these technologies allow developers to program dynamic web
pages without worrying about the low-level implementation details. For that reason, both
platforms have been incredibly successful.
The original ASP platform garnered a huge audience of nearly one million developers,
becoming far more popular than even Microsoft anticipated. It wasn’t long before it was being
wedged into all sorts of unusual places, including mission-critical business applications and
highly trafficked e-commerce sites. Because ASP wasn’t designed with these uses in mind, performance,
security, and configuration problems soon appeared.
That’s where ASP.NET comes into the picture. ASP.NET was developed as an industrial strength
web application framework that could address the limitations of ASP. Compared to
classic ASP, ASP.NET offers better performance, better design tools, and a rich set of ready made
features. ASP.NET was wildly popular from the moment it was released—in fact, it was
put to work in dozens of large-scale commercial websites while still in beta form.