Just read an interesting article in the August 2007 MSDN Mag; to be specific, its the regular CLR Inside Out feature.

They go into the differences of .NET 1 Array Lists and .NET 2 Generics - and that in 99.9% of cases (ok, I'm paraphrasing here!), you should use generics wherever humanly possible in .NET 2 due to the performance benefits.

Well, there you go - that's it from the horses mouth so to speak!