Back to the list


C# language specification

7th edition, December 2023

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.
Microsoft Visual C# Version Corresponding Ecma Standard Corresponding ISO/IEC Standard
V1 ECMA-334:2003 ISO/IEC 23270:2003
V2 ECMA-334:2006 ISO/IEC 23270:2006
V3 none none
V4 none none
V5 ECMA-334:2017 ISO/IEC 23270:2018
V6 ECMA-334:2022 none
V7 ECMA-334:2023 ISO/IEC 20619:2023 (which includes by reference the latest edition of ECMA-334)
Download this standard


CategorySoftware engineering and interfaces

SubcategoryProgramming languages

Technical CommitteeTC49

ISO/IEC number23270


  • ECMA-334, 1st edition, December 2001Download
  • ECMA-334, 2nd edition, December 2002Download
  • ECMA-334, 3rd edition, June 2005Download
  • ECMA-334, 4th edition, June 2006Download
  • ECMA-334, 5th edition, December 2017Download
  • ECMA-334, 6th edition, June 2022Download


  • ECMA-334 Hewlett-Packard patent statementDownload
  • ECMA-334 Microsoft patent statementDownload