http://www.dotnet-tricks.com/Tutorial/csharp/U08E301212-Difference-between-Generics-and-Collections-with-example.html
http://www.c-sharpcorner.com/UploadFile/deveshomar/basic-of-generic-class-in-C-Sharp/
In simple terms - Collections can hold elements of any data types e.g. ArrayList Generics can hold elements of a specific data types e.g. List, where T stands for the data type.You might need to type cast while accessing the elements in the ArrayList while it is not the case for Collections.
collections support for stacks, queues, lists, array list and hash tables. Generics allow you can work with any data type. You can create your own generic interfaces, classes, methods, events and delegates.
Generics: http://www.c-sharpcorner.com/UploadFile/deveshomar/basic-of-generic-class-in-C-Sharp/
generics allows you to work with any data type Collections are collection of arraylist
For collection.. http://www.tutorialspoint.com/csharp/csharp_collections.html and for generics http://www.tutorialspoint.com/csharp/csharp_generics.htm