I don't consider this to be anyone's fault, my point is that post-MS acquisition, it is easier to get access to the newest mono runtimes/compilers, which is why we are seeing them appear in Unity and in Godot.
>MS began to release their own .NET implementation under the kinds of license terms that Unity wanted years ago, but Unity didn't budge
That one wouldn't have targeted all of their platforms, right?
The fees went away, they started moving.
Its more complicated than that, but ultimately they won: the people demanding license fees got flipped off and they got what they wanted for free.
...so, I know a lot of people have been angry about this, but by every metric what they did was a total business success.
If you want the guys from Unity to act differently, you have to actually tangibly affect them (eg. pick a different engine), not just complain.
- Xamarin did offer a commercial license to Unity; Unity would not accept it
- MS began to release their own .NET implementation under the kinds of license terms that Unity wanted years ago, but Unity didn't budge
- In the meantime, MS then relicensed Mono itself—the .NET implementation that Unity actually wanted—under the kinds of terms that Unity wanted, but still Unity didn't show signs of moving until very recently
The whole it's Mono's fault that Unity sucks was essentially a successful PR attempt for Unity to disclaim responsibility for their shortcomings, with the (maybe not unintentional) side effect of directing public ire towards Mono for not doing enough free work (to benefit what was already one of the industry's most successful companies!)