I don't see anything unethical about requiring developers to use certain tools for a particular phone platform. Don't make the mistake of assuming this decision is about us developers.
Sure it is about making their .NET platform more valuable by making it the only way to develop Windows Phone apps. Nothing monopolistic about that =) Just that this time it's backfiring and we already see an exodus of manufacturers.
.NET is what MS is betting on, just as Apple is betting on ObjC and LLVM. It would be very odd if MS did not try to push .NET on mobile devices. The exodus of manufacturers is unrelated to that.
It's really about the users (buyers) of the phones and about how to provide them with the best experience, best apps, and quickest turnaround when new OS and device releases are made.
Offering a native API doesn't change anything for users in any of these terms. And quickest OS development is a terrible excuse, like if they don't have enough money to pay a couple dozen developers to work on the native API.
Reviewing the timeline for the release of iOS 4 is instructive. This is a major update and the 4th major release in as many years. That alone is just staggering compared to desktop OSs.
Since I'm an Apple Developer I have all the e-mail announcements from the last several months that went out to all of their developers.
April 9, 2010: First beta of iOS 4 (still called iPhone OS) and SDK available for download.
April 20: Beta 2
May 5: Beta 3
May 19: Beta 4
June 10: GM released during WWDC conference
June 24: iPhone 4 released
July 1: Apple reminds developers that new and updated iOS apps need to be compiled against SDK 4.
July 7: Almost all of the apps I have on my iPod touch have been updated to iOS 4.
Compared to desktop OS's, where tool developers typically have months and even years to update tools for a new release, this all happened in less than 3 months. How did Apple accomplish this? Well, for one thing, they control the tools and have invested heavily in open source projects like LLVM, WebKit, etc.
The result is that user expectations are met: many apps are immediately available in updated versions almost simultaneously with the new OS/device launch. Developer expectations are also met: Just recompile in many cases.
Where do 3rd party tools fit into this new world? Well, maybe they don't. Or at least not in the way that we traditionally think of them.
A similar timeline could probably be constructed for Android, which is also moving incredibly fast, maybe even faster than iOS. This is really unprecedented, I think. But I think it represents a tipping point of sorts, a culmination of all the long hard years of development of Unix, Linux, OS X, GCC, Java, Internet standards, etc. It appears as though finally the fruit can be harvested by the public.
Thanks.
-Phil