Not the best example to justify adding generics late.
Honestly, in the medal positions for sloppily expressed programming sentiments, complex/simple occupy the bronze/silver positions just behind the ultimate... "elegant".
C# has had generics since 2.0, so ALL is a bad choice of words there.
One of many posts about generics history in .NET:
http://blogs.msdn.com/b/dsyme/archive/2011/03/15/net-c-gener...
Nothing complex about generics that the average modern day programmer can't grasp. We're not talking about some '00s enterprise drones that were never exposed to those concepts.
People used to talk like this about closures in Java too -- "too complex, who needs them", etc. Didn't turn out very well for the language's mindshare about the new generation of programmers...