Prior to C# generics, everyone would code collections for their business objects by creating a collection base that implemented IEnumerable
IE:
publi
6 of 1, half dozen of another
Either way its the same thing. I only do it when I have reason to add custom code into the BusinessObjectCollection.
With out it having load methods return a list allows me to write more code in a common generic class and have it just work. Such as a Load method.