AndreRet - Yeah, most Linux hosts. There are *plenty* of Windows/IIS hosts also that support ASP.NET no problem.
I would say ASP.NET is a much better thing to learn especially if you want to be able to have skills that translate outside of web development. ASP.NET is usually written in C# or VB.NET, and if you learn a language like C# then you will able to write many other things besides websites, like Windows apps, iPhone apps, Android apps, Windows Phone apps, and not to mention Linux/Mac OS X apps.
ASP.NET is superior to PHP because PHP is a horrible language, but you can use good languages with ASP.NET, and there are Mono implementations, and if they're good then Windows licenses are not a problem. You don't need to worry about "web hosting companies" because why wouldn't you get a VPS? Exactly.