usingベンリー!
id:NyaRuRuに教えてもらったのですが、GDIリソースをnewする時にはGCはGDIリソースを管理していないので、自分でDisposeを呼んでおいた方が良い、という話を聞きました。更には、using構文というのを使うと、それすらも勝手にやってくれるそうです。
http://www.divakk.co.jp/aoyagi/csharp_tips_using.html
簡単に書くと、
using(Pen thePen = new Pen(Color.Black)) { // thePenを使った処理 }
ってすると、最後の}を抜けた所でthePen.Dispose()が呼ばれるそうなのですね。非常に便利です。感動しました。