I am a young(er? 29) developer and I do most of my development on the .NET stack. No, it's not as "cool" as being an iPhone dev, but at least Ballmer doesn't tell me I can't compile my code without forking him $100/yr...and he doesn't take 30% percent of whatever I might make selling my code.
I work in a mixed shop where most of the other devs are Ruby/Rails guys...they all see me as a "sellout" for using .NET (and maybe I am?)...but when it comes to choosing what platform to learn and code in, I'm pretty happy with Microsoft in general. It's a lot easier for me to find a job doing .NET than it is for them in Ruby/Rails...and in 5 years they'll have to throw out everything they learned about Ruby/Rails because the fanboyism that drives their community will have moved on to the next "big shiny thing" (Scala?)...I'll still be writing code in C#...Does that make me a sellout? Maybe, but I'll take more money for less work and less drama any day of the week.