Why do I need Dispose()

In working with C# myself and with customers I've discovered an area of confusion and hidden bugs. Resource management, the RAII pattern and Dispose() are typical trouble spots for those of us who deal with C# and C/C++. I've just completed an article on resource management in C# that hopefully will shed a little light on the subject.