Microsoft in comparison looks like a beautiful tour de force of openness. Free (arguably) open CIL, languages, document format, IDE, documentation. No one DECIDES who can develop on windows mobile. Or for that matter most other SDKs. As for the cost, absolute worst case for an individual - about $1k a year to get an MSDN subscription.
Meanwhile 4000 devs are going to make ALL the applications that the masses could ever want on an iPhone. Why not just open it up for $100/$300? Heck, why isn't it free to push open source projects? Why isn't it free to push to your own iPhone? Why hasn't anyone asked Apple these questions? This is insane. If Microsoft tried something this crazy everyone would be in an uproar. This will give a huge advantage to large or "in the know" tech companies. I don't see the advantage to the consumer. The iPhone SDK is already relatively locked down so I don't want to hear security.
This being said I have an iPhone and Macbook. They are beautiful elegant machines. They work great. The interface is excellent. FreeBSD is $$$$. They've replaced my linux boxes at home. My iPhone completely pwns my old samsung blackjack. I actually use the internet on my iPhone and I enjoy using it.
I am frustrated that I can't push my iPhone apps from my macbook to my actual iPhone. I'm frustrated that I can't get some of my linux apps to work in OS X. It seems like they have it out for open source / small business / hackers. I could jail break my iPhone, but I shouldn't have to. I could install Xen and Linux, but I shouldn't have to. Sadly, I would be happy if Apple gave us the same choices as Microsoft. That should not be too much to ask.
EDITED: Syntax and a sentence or two.