dotnet has gone pretty open source these days, no? I guess it may depend on the rest of your environment - maybe the Windows specific stuff like forms and WPF are still under them?
Other than that, I think you don't need too much dependence on them, depending on how you look at them controlling it. It being OSS personally gives it more stability since it can always be forked if they pull some nonsense.
The tooling isn't all open source. VSCode C# debugger isn't, for example.