I have lots of coworker friends who used to do their home pages in PhP/mySQL, I have nothing against it. :) But is there a market demand for php programmers? I just don't see it too much. C# programmers, on the other hand, is on the rise and paying good!
Now for .NET, it can be free:
Download the free .NET framework
Download a free web server like Cassini Web server
Use Notepad or another free IDE [url]http://www.asp.net/webmatrix/default.aspx?tabIndex=4&tabId=46[/url] (Although VS.NET is fantabulos and worth it!)
Use a free database like the one we talked about above
And there you have it, FREE .NET capability!
.NET is open language, you can use C#, C++, VB.NET, COBOL, (for .NET) etc... That is truly amazing when you can have Java and VB developers working on the same project, and easily cross-debugging each other's code and calling their functions, etc...
As for open source, there are efforts on open source .NET. .NET was designed with platform independence in mind, just when it first came out, only worked with Windows. Don't worry, this is changing. http://www.go-mono.com/