GetInterfaces:
typeof(List<string>).GetInterfaces()
returns
Type[] (8 items)4
typeof(IList<String>)
typeof(ICollection<String>)
typeof(IEnumerable<String>)
typeof(IEnumerable)
typeof(IList)
typeof(ICollection)
typeof(IReadOnlyList<String>)
typeof(IReadOnlyCollection<String>)
If you need a specific interface, you can use IsAssignableFrom:
typeof(ICollection).IsAssignableFrom(typeof(List<string>))
returns true
source
share