I add this operator to my class and works well when I pass a class of "A" it convert to class "B".
public static explicit operator B (A a)
//Convert A to B
public static explicit operator List<B>(List<A> a)
//Convert List<A> to List<B>
You can't use Conversion Operators for converting list of one type to another.
C# enables programmers to declare conversions on classes or structs so that classes or structs can be converted to and/or from other classes or structs, or basic types.
As you see, the purpose is to convert one type to another, not the list of that types.
You can use
Select method instead of that:
List<B> listB = listA.Select(a => (B)a).ToList();