ものすごくよく聞かれる質問なので、まとめときます~。
様々な視点を持つことが大事ってことで、
■ 設計の観点から
パフォーマンスに関するベスト プラクティス一覧
http://www.microsoft.com/japan/msdn/enterprise/pag/ScaleNet-AtGlance.asp
■ コーディングの観点から
.NET アプリケーションのパフォーマンス関連のヒントとトリック
http://www.microsoft.com/japan/msdn/net/general/dotnetperftips.asp
コーディングの部分がちょっと古いですが、VS2005でも使えます。
むしろ、.NET 2.0のクラスライブラリはかなりパフォーマンス面でも改良されていますので、
うっかり自作するのではなく、
まず、クラスライブラリにないか?
「探して使う」スタイルの開発がよいです。