It's distinctly possible that Unity3D will "rescue" this aspect if C#, although from what I saw of the community it's not there yet. Probably the lack of a good package / dependency manager - oh, and the lack of up-to-date C# support (last I checked you were stuck way back with 3.5).
Yadda yadda, if I wanted to "fix" the lack of an open source community in C#, I'd start with the Unity3D community.