I agree. C# is wonderfully designed, only reason I haven't switched is the huge number of wonderful libraries available in java.
Also sad that C# went asynchronous. I mean, it works great, and it's better than what Java has now, but it's not backwards compatible like I expect fibers to be. With how many third party libraries we pull in, this is a gigantic selling point
I guess the time was due for us C# developers to have something to be envious of in Java world :)
I'm really disappointed that .Net world went the async/await route. This blog post best describes why: http://journal.stuffwithstuff.com/2015/02/01/what-color-is-y...