if (this.lista is List<B>) { List<B> list_B = this.lista as List<B>; foreach (B b in list_B) b.Tarea(); } else if (this.lista is List<string>) { List<string> list_S = this.lista as List<string>; foreach (string s in list_S) Console.WriteLine(s); }