Before reading this post you have to know what IHttpHandler intaface does.
Basically, the IHttpAsyncHandler interface allows you to serve content
asynchronously from a HTTP handler. This is great when you need to free
up the worker thread to do processing like IO work etc. ASP.NET
actually uses fewer threads when it runs asynchronously, which is great
for performance and scalability. That’s because each thread is returned
much faster to the thread pool.
There you are a simple example.