title: Difference between C# compiler version and language version
body: <p>There was time I thought that the Framework version and the C# version are the same things, so once you install the next Framework version on the computer, you should use it.</p>
  
  <p>Then I found out that the framework is not linked directly with the C# version, and on the same machine multiple C# compilers can be cohabitate, so probably the compiler and C# version should be the same.</p>
  
  <p>Now I understand that the compiler version and the C# version are not the same... </p>
  
  <hr>
  
  <p>Visual Studio Command Prompt (<em>2010</em>): <code>C:\&gt;csc</code></p>
  
  <p>Microsoft (R) Visual C# <strong>Compiler version 4</strong>.0.30319.33440<br>
  for Microsoft (R) .NET Framework 4.5</p>
  
  <hr>
  
  <p>Developer Command Prompt for VS <em>2013</em>: <code>C:\&gt;csc</code></p>
  
  <p>Microsoft (R) Visual C# <strong>Compiler version 12</strong>.0.30110.0<br>
  <strong>for C# 5</strong></p>
  
  <hr>
  
  <p><img src="https://i.stack.imgur.com/FXKT9.png" alt="enter image description here"></p>
  
  <p>we can see that<br>
  - VS 2010 uses a compiler version 4.0 for the C#4 (?? I just can suppose it, because not explicitly mentioned);<br>
  - VS 2013 uses the compiler version 12.0 fo the C# 5 (this is explicitly mentioned)  </p>
  
  <p>Knowing that <a href="https://stackoverflow.com/q/22812388/185593">compiling using different language versions could bring different results</a> to the user</p>
  
  <h1>Questions</h1>
  
  <ul>
  <li><p>How to find out what <strong>C# version</strong> (not the compiler one, but the language one) uses VS to build my concrete project?</p></li>
  <li><p>Is there a strict, clear and transparent link between the C# <strong>compiler</strong> and <strong>language</strong> versions?</p></li>
  <li><p>Can I indicate to Visual Studio (in case of migration issues from one Studio version to another) to use different compiler version for my concrete solution?</p></li>
  </ul>