The majority of Loopt's back-end runs in Windows Server 2003/2008, .Net 3.5 and SQL Server 2008. We have some Ubuntu, PostgreSQL, MySQL, Ruby, etc. as well.
I really enjoy the tooling, the documentation, and the libraries. There is exactly one time we've run into an issue with the built in libraries: The documentation didn't match what really happened, but Microsoft confirmed this for free and fixed the docs.
Visual Studio is rather polarizing. I'd say the developers at Loopt fall into three camps: Like it, miss Eclipse, and still use Emacs. You don't have to use it. I can't type more than 20 WPM; Intellisense is so good I haven't felt the need to learn to type properly.
Cost wise it's really not a problem. There's BizSpark which is great for three years, but after that you can get into their SPLA licensing program. It lets you pay per month for only what you use. See http://www.microsoft.com/serviceproviders/licensing/default....
Loopt started before BizSpark, so we know what it costs. Here's a hint: we paid more per month for Office and Exchange than we did for the software running our service. All in it was less than hiring an intern.
If you're super strapped for cash, just get an MSDN subscription, and use it for everything. It's not legal, but Microsoft knows there's more money to be made by letting you become successful (at which point you pay real money for licensing) than there is in going after your initial few counts of infringement.
If you like getting into the guts of things you might not like .Net, even though they've released many of the symbols and source code. See http://msdn.microsoft.com/en-us/library/b8ttk8zy(lightweight... That said, you can't edit it. I'm ok with this though because in my experience it just works. I'd rather focus on developing my product than fixing the tools and runtime I'm using.
The open source .Net scene is a little touch and go. There are some great projects out there, many by Microsoft itself, but it's simply not as robust and vibrant as the Linux open source community. This seems to be changing (slowly), but as I said earlier we've found compelling reasons to have a mixed environment.
I'm not saying it's all good. ASP.Net is a valiant attempt to solve the wrong problem. Drag and Drop doesn't work for the web. .Net MVC is much better. Despite that, our website is written in Rails, and communicates with our back-end using Thrift. It works great.
If you want to know more let me know. Maybe I'll write a blog post.
Edit: Grammar