Andrew Siemer has written an excellent book about how to best use .Net (specifically with asp.net as the front end web technology) to build a social networking site. He literally starts at the beginning and builds service by service, screen by screen, data table by data table what is necessary to build the site. A lot of Andrew shows is not only just web type stuff, but he shows many best practices for building .Net applications in general.
Among other things, the goes in to great detail on the following topics:
- Domain Driven Design
- Model View Presenter Pattern
- Factory Pattern Using Structure Map (IOC)
- Error Handling
- Social Network Schema Designs (Friends and Groups)
- Messaging
- Data Layers (LINQ to SQL)
- Blog Design
- Forums and Moderation
As well as many other topics including application scaling and many others. As developers, we have many choices as to what technologies to use and how to use them. I have to say, I agree with 95% of the choices Andrew makes and whole heartedly recommend reading his book.