I've never used ASP.NET myself, but I am intimately familiar with both PHP and C# and both are suited for very different tasks -- knowing both platforms and their capabilities will save you a great deal of time when designing web applications. Without a doubt, and I think most web developers would agree with me, PHP is the easiest and most productive language, though that isn't to say that it is necessarily the practical choice for a particular purpose.
PHP excels at two things: serving textual data or other simple, dynamic structures and enabling lazy developers to write functional code with very high productivity. Conversely, ASP.NET is cumbersome but efficient, and possesses a potential for scalability that's orders of magnitude beyond the load PHP is capable of handling. Take for example a scenario in which the server must obtain a large amount of POST data from the client, gzip it, AES encrypt it and return the data. In PHP, this consists of two function calls. In C#, AesManaged, CryptoStream and GZipStream objects are constructed and chained together before the request body is passed through them and returned. It may well be the least intuitive, highest verbosity-to-throughput code you've ever seen, but on a multi-core machine, the performance dwarfs the equivalent PHP code. Take from that what you will.