Сбж, он же
Be Careful Where You Put GC.SuppressFinalize от Alois Craus.
Он же "Как не надо использовать финалайзеры, сложный способ"
P.S. И да пребудет с вами SafeHandle.
P.P.S. Чтобы два раза не вставать: Matt Warren,
Resources for Learning about .NET Internals. На удивление полный список.