As of 1/2017 what is the highest version of .NET that unity can handle?

I’m trying to compile an external C# DLL for Unity 5.5
Is it still true that the DLL mustr be compiled as .NET2.0 in Visual Studio?

Unity currently supports .NET 4 (When the accepted answer was posted it did) – when Unity 5.6 is released (or now with the beta Unity Editor Beta Releases) it will support .NET 4.6

what is the highest version of .NET
that unity can handle?

Well, strictly speaking: “none” as Unity doesn’t use .NET but Mono (with the only exception for Windows Phone / store apps). Certain things might always be missing or slightly different. Unity still uses the same Mono version so nothing has changed in that field. Usually compiling for .NET 3.5 should work as the Mono version Unity uses roughly represents .NET 3.5. It even supports some newer features but at the same time might be lacking others.

The choosen target platform actually isn’t too important as the IL code would be quite the same. It’s more some newer language features and “standard classes / types” which might be missing in the core.

So yes, you still need to compile your assemblies for .NET 2.0 / 3.5. Feel free to keep an eye on the release notes. However i doubt that the change to a newer Mono version is near. Such an update will most likely be part of a major update. Though they have often said that it’s not that easy to upgrade to a newer version as all platforms have to support it.

In the end there are barely things in the newer .NET / Mono versions which you “really” need. Most problems arise from thrid-party libraries which have been compiled with a newer version. If you create your own assembly you shouldn’t have much trouble compiling it for .NET 2.0

This question is actually almost off-topic as it’s not about a concrete technical problem but just asking for general information. We aren’t google. If you have an actual / concrete problem which requires you to use a higher .NET version you should have ask about that. Your current question is in the form of “what is the highest version …” and “Is it still true that …”. The “answer” for your second question is simply “yes”.


“Scripting: Experimental support for new scripting runtime. This includes Mono 4.8 and IL2CPP with support for C# 6 and .NET 4.6”