The language-version only relies on the version of Visual Studio. To use features intorduced in C#6 you need at least VS2015. This has nothing to do with the installed .NET-framework-version. In fact you can use VS2015 and its compiler-features (e.g. auto-implemented properties with an initial value) and compile against .Net 2.0:
int MyProperty { get; set; } = -1;
To change the target-framework (e.g. .Net 2.0) use Project properties-->Application-->Target framework.
To change the language version via Project properties-->Build-->Advanced-->Language version.
Let´s consider the following example: Beginning with C#3 you can write the following:
var a = new { MyProperty = 1 };
This compiles for any .Net-version. However the most common use-case for anonymous types is when using Linq to fetch data from a database. Linq was introuced in framework-version 3.5 and heavily depends on lambda-expressions and extension-methods, which both were introduced in C#3:
var result = myCollection.Select(x => new { MyProperty = x.MyProperty });
So although you could use anonymous types in earlier versions of the framework, there was little need to do so.
To get a better view on the difference between the C#- (=language)-version and the framework-version read this post. This thread on the other side lists the language-versions and in which version of VS they were released.