With AS.NET (classic or MVC) you have the full power of the framework behind you. And of course, really high-end object-oriented architecture with C# (and other
.net enabled languages[
^]). But there are few site hosting providers, who support asp.net. Of course you can make your own virtual or phísical server also, but you have to prepare yourself for really expensive windows server and at least IIS licenses. You can also
use Azure[
^] for that. This has a longer learning path.
With PHP it is an other scenario. Most of the providers use open source tools, thus the service you buy will be cheaper. But even with full-blown php 5 you will experience serious limitations from provider side - thus for a business application you will have to upgrade from simple site hosting. PHP itself is easy to learn, but if you want to have a maintainable and scalable application, you will have follow some rules by yourself, nothing will really guide you.
And there are several other possibilities, like Ruby, Python or Perl, and their support is also widespread.
Finally: there is none better in general. But there might be one more suitable for a specific task. If you are a newbie, I would start learning html4, css2, javascript (jquery), html5, css3, basic database usage (mysql and mssql). Than think about what you want to do with web programming in general. If you will develop business application for companies, ASP.NET and MVC and C# would be the next steps. If you want to make websites, PHP could be more suitable.
You should also read this articles:
http://www.comentum.com/php-vs-asp.net-comparison.html[
^],
http://www.jasonmorrison.net/content/2004/software-comparison-aspnet-vs-php/[
^]
I hope I have helped you.