Unity uses Mono in order to achieve multi-platform compatibility.
Because of that it wouldn't make sense to use .NET 4.0 or higher, since Mono does not support them either.
However Mono does support 3.5, in fact it supports most of its features , so I wonder, why does Unity still use version of .NET that is almost a decade old.
I understand that most if not all developers prefer stability and familiarity over cutting edge. I would just like to know what are possible reasons for this decision. Especially since later .NET versions introduced several very nice features.
Compatibility reference for Unity.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…