On of the design issues i have heard come up frequently is casting objects of a derived type to its base type. Using generics we cannot cast a collection of derived types to its base type...unless we create a collection based upon an Interface
http://pteklog.blogspot.com/