An really important feature of .NET is that it can be used for developing web apps (ASP .NET), desktop apps, web services, Palmtop development, in short pretty much anything (the only problem being it is not cross-platform, unless you count the open source Mono project, which is coming along well). So ASP .NET is only one part of its capability. If you were writing a suite of applications for desktop, web, palm then the same business logic libraries could be re-used for all of these projects.
PHP is pretty much web-only and is specialised in that area.
If you are only interested in creating a web app, then PHP competes well and the learning curve would be much smaller.
.NET is in essence Java rebadged and developed further, with the cross platform capabilities removed.