I often ask other developers which phase of the development process is the most difficult and most important. 90% of the time the answer is the planning and design phase, not the building/programming phase. Then I ask them another question. "Which part of the development phase do you enjoy the most?". Most developers answer "the planning and designing part".

In this article I want to introduce intermediate .NET developers to the world of professional ASP.NET development with C#. I will introduce and expand on many topics that relate to the planning and design phase of software development, and also share my experience on it. Throughout the article I will also try and show "the Microsoft way" of doing things.