From C# 5.0 Specifications
4.4 Constructed types
A generic type declaration, by itself, denotes an unbound generic type that is used as a “blueprint” to form many different types, by way of applying type arguments. The type arguments are written within angle brackets (< and >) immediately following the name of the generic type. An unbound generic type can only be used within a typeof-expression (§7.6.11). A type that includes at least one type argument is called a constructed type. A constructed type can be used in most places in the language in which a type name can appear. An unbound generic type can only be used within a typeof-expression (§7.6.11).
Constructed types can also be used in expressions as simple names (§7.6.2) or when accessing a member (§7.6.4).
Is the concept of "constructed type" the same as the concept of "bounded generic type"?
4.4.3 Bound and unbound types
The term unbound type refers to a non-generic type or an unbound generic type. The term bound type refers to a non-generic type or a constructed type.
An unbound type refers to the entity declared by a type declaration. An unbound generic type is not itself a type, and cannot be used as the type of a variable, argument or return value, or as a base type. The only construct in which an unbound generic type can be referenced is the typeof expression (§7.6.11).
Is a non-generic type both an unbound and bound type?