We had a rather heated internal disccusion about managed code reliability, and one of discussion is finalizer. Chris Brumme wrote a very long reply revealed the details of finalization and why it is not reliable. The great thing is, he posted it in his blog!

Go read his blog when you have some free time.