The idea of collections fits perfectly with the Object Oriented Programming concepts that VB.NET is built on. If everything in VB.NET is an object (and that's true), then it's possible to put everything in VB.NET into a collection (and that's true too).
Sometimes it's easier to understand programming concepts with metaphors to relate them to everyday life. And everyday life is filled with collections. For example, if you consider the type "automobile" to be an object, then you could define a collection of automobiles. The objects in this collection could have a property called "color" and a methods called "brake" and "accelerate". (Better have both, not just one!) Now, if your program was a control program for an automobile assembly plant, this could be a very realistic example. One output might be controls for an automated painting process in the plant (which would use the "color" property for each "automobile" object) and another output could control an automated test facility (the "brake" and "accelerate" methods).
You ought to kick back for a second and think of some collections yourself. Try to imagine a computer system and how the collection would be processed. Think of properties and methods that your collection would have. Say, items in a grocery store or books in a library or ...

