Generics basically remove the need to cast and objects into their base type.
e.g. if you want to store a group of Foos in a List.
You used to have to either create your owen FooList or cast the item as objects.
All this takes you time and the complier.
With Generics all you have to do is sat List it checks you types and speeds up you programs. (no boxing and unboxing)