I\'d like to add different types of objects derived from one class with generics into a List of base type. I get this compile error
Error 2 Argument 1: c
You can do this using covariance and contravariance, but your ShelterBase class needs to derive from an interface, since only interfaces can be co- or contravariant. You list will need to be a List> and it should work.
List>
See here for more info