My buddy and I are starting a web project (a Q&A site for translations) and have chosen ASP.NET MVC. It doesn't abstract away the innards of the web like WebForms did. It has no more magic than RoR.
Why are we using .NET instead of something like RoR or (my framework of choice) Grails? Because my buddy knows it inside and out, the tools are great, and we'd like to minimize the number of unknowns in our project. We're pragmatic.
There's plenty of .NET open-source projects out there for things like dependency injection and ORM.