Ecma International Home
contact us
Ecma Site Map


Standard ECMA-334
C# Language Specification

5th edition (December 2017)

This specification describes the form and establishes the interpretation of programs written in the C# programming language. It describes

  • The representation of C# programs;
  • The syntax and constraints of the C# language;
  • The semantic rules for interpreting C# programs;
  • The restrictions and limits imposed by a conforming implementation of C#.

This specification does not describe

  • The mechanism by which C# programs are transformed for use by a data-processing system;
  • The mechanism by which C# applications are invoked for use by a data-processing system;
  • The mechanism by which input data are transformed for use by a C# application;
  • The mechanism by which output data are transformed after being produced by a C# application;
  • The size or complexity of a program and its data that will exceed the capacity of any specific data-processing system or the capacity of a particular processor;

All minimal requirements of a data-processing system that is capable of supporting a conforming implementation.

The following files can be freely downloaded:

File name Size (Bytes) Content
ECMA-334.pdf 5 722 693 Acrobat (r) PDF file

This Ecma publication will also be approved as ISO/IEC 23270:2018,
which is freely available here Link to non-Ecma site. Ecma is not responsible for the contents of the site..

Microsoft Visual C# Version Corresponding Ecma Standard Corresponding ISO/IEC Standard
V1.0 ECMA-334:2003 ISO/IEC 23270:2003
V2.0 ECMA-334:2006 ISO/IEC 23270:2006
V3.0 none none
V4.0 none none
V5.0 ECMA-334:2017 ISO/IEC 23270:2018

The previous replaced "historical" editions of this Ecma Standard are available here.

Back Back





only search Ecma International

Level A conformance icon, 

          W3C-WAI Web Content Accessibility Guidelines 1.0