Take advantage of output caching for Web Forms pages and user controls.
Take advantage of caching for data retrieved with ADO.NET.
Use the Cache APIs to get fine-grained control over the expiration, dependencies, and other properties of cached items.
The good news about ASP.NET is that its improvements—from the use of compiled languages rather than interpreted languages to the complete rewrite of the ASP.NET execution engine—make it easy for you to obtain the performance that many of your applications need. Well-designed applications written in ASP.NET will almost always be faster than the equivalent applications written in classic ASP.
However, for one class of applications these performance improvements alone will not be sufficient. These can include applications whose pages are computationally intensive (such as pages that use recursive procedures) or access large amounts of data, and applications that need to scale to large numbers of concurrent users.
ASP.NET offers new features for this class of applications, including a simple API for output caching and a rich and robust caching engine and API.