The System.Type
type contains the properties IsGenericTypeDefinition and ContainsGenericParameters. After reading the MSDN documentation I conclude that both properties exist to to check whether a type is an open or closed generic type.
However, I fail to see what the difference is between the two, and when you want to use one over the other.