This works on dotnet. The dotnet runtime is versioned separately from the language so you can use a library written and compiled with C# 5 in a project that is written in C# 7 so long as they both target a compatible runtime. You can go even further and use a C# 7 library in a F# or VB project.