Kind of, Mono never was up to speed with what .NET Runtime is capable of, plus before Xamarin got acquired by Microsoft, Unity didn't want to renew their licenses so C# on Unity was stuck into .NET 3.5 world.
They also started their own native code compiler for C#, called IL2CPP, because it compiles MSIL via C++ compiler.
Recently they migrated to .NET 4.6, although the latest version is .NET 4.7.2, due to some Roslyn integration issues.
Additionally they started another project to compile a C# subset (HPC#), with a new compiler named Burst, as a means to start porting some of their C++ modules into C#.
They also started their own native code compiler for C#, called IL2CPP, because it compiles MSIL via C++ compiler.
Recently they migrated to .NET 4.6, although the latest version is .NET 4.7.2, due to some Roslyn integration issues.
Additionally they started another project to compile a C# subset (HPC#), with a new compiler named Burst, as a means to start porting some of their C++ modules into C#.