How to create this type of subdomain on the fly like Blogger.com
Use a wild card domain in IIS so it traps every request to the top level domain and under.
In asp.net: Create an HttpModule... this will run for every request and you can check the domain name, etc and pull in user information based on the sub-domain. An example httpmodule can be found at URL Rewriting in ASP.NET via HttpModule.
In asp.net mvc: Create a custom RouteHandler (custom based on interface IRouteHandler). Look at RouteHandler vs ControllerFactory question for an example.
You need to add a wildcard DNS mapping that maps *.example.com
to your webserver, and a wildcard hostname mapping telling IIS to send all subdomains to your ASP.Net website.
You can then check Request.Hostname
in server-side code and use the appropriate content (or error message)