Я думаю, что вы пытаетесь достичь этого.
public class MyBaseClass{}
public class MyChildClass : MyBaseClass{}
тогда в другом месте вы хотите вернуть только объекты MyChildClass.
это то, что вам нужно сделать:
public IEnumerable<MyBaseClass> GetFilteredObjects(Type type, List<List<MyBaseClass>> lists)
{
foreach(var list in lists)
{
foreach(var item in list)
{
if(item.GetType() == type)
yield return item;
}
}
}
тогда вы вызываете этот метод так:
var myChildClasses = GetFilteredObjects(typeof(MyChildClass), listOfLists);
Надеюсь, это то, что вы ищете.