You know, a majority of what I do is focused on Microsoft technologies and the .Net framework. I live and breathe that stuff. In fact, I frequently attend their MSDN Events, I subscribe to the CoDe Magazine, I listed to their webcasts and I am currently going for MCPD certification. So why would I focus so much on Microsoft and not on Open Source solutions like Linux hosting and PHP development? The answer is simple, Microsoft has been easier to learn thus far and with the new .Net 2.0 framework, it’s easier than ever to work with new techniques like Membership, and SQL Server data access.
But to be fair, Open Source solutions are easy to learn and fun to develop with. Comparing ASP.Net to PHP 5, the differences are obvious. Linux tends to be much faster with a little less development backbone, but offers a some really cool end products. In fact… WordPress is developed using PHP and MySql, two popular Open Source technologies. ASP.Net tends to be a bit more secure (although it really does depend on how you develop it) and easier to design an architecture around.. although it can be sluggish at run-time.
If I were really looking to point someone in the right direction, I am not sure which way I would point. In the end, it really depends on how much you enjoy it.