Common Language Specification - CLS

The Common Language Specification (CLS) serves as a vital set of language features that are essential for developing applications and services compatible with the .NET Framework. It acts as a unifying standard, ensuring seamless communication between objects written in different .NET-compliant languages. To enable effective interaction, these objects must expose features that are common to all languages.

Follwoing the Common Language Specification (CLS), developers guarantee complete interoperability among applications, regardless of the specific language used in their creation. This specification establishes a common ground where different .NET languages can communicate and cooperate effectively.

Common Type System (CTS)

The Common Language Specification (CLS) is based on the broader Common Type System (CTS), which defines a comprehensive set of types shared among various .NET languages. The CTS enables objects written in different languages to interact harmoniously by providing a common set of rules and guidelines. This ensures that objects can seamlessly communicate and share data, regardless of the language in which they were created.

Many of the members defined within the .NET Framework Class Library (FCL) adhere to the standards set forth by the Common Language Specification (CLS). This compliance ensures that the types and members defined in the library can be seamlessly accessed and utilized by applications developed in different languages.

Ecma International organization

The Common Language Specification (CLS) has been standardized by the Ecma International organization, further solidifying its significance and acceptance within the .NET community. This standardization promotes consistency and compatibility, allowing developers to create robust and interoperable applications.


The Common Language Specification (CLS) plays a crucial role in the .NET Framework by establishing a set of language features that promote interoperability among applications developed in different .NET-compliant languages. By adhering to the CLS, developers ensure that their code can seamlessly communicate with objects written in other languages. This specification is based on the Common Type System (CTS) and is widely adopted, with many components in the .NET Framework Class Library (FCL) conforming to its guidelines.