- To run ASP you need IIS on windows, which is not free, for PHP however you need Linux and Apache which are FREE!!
- Great built in support for ftp, email, graphics package GD2 and also MySQL (also FREE).
- PHP will run on Unix, Linux, Solaris and Windows. ASP is mainly only Windows associated but you can use it on linux with additional modules installed.
- PHP code is much faster, ASP is developed on the COM based architecture, this is an overhead for the server.
- Advanced Perl-compatible regular expression functions and loads of built in support for regular expressions on the whole.
- Greater control over error handling, and more detailed error messages.
Well PHP seems to have a lot more mainstream frameworks (CakePHP, Codeigniter, Symfony, Zend Framework) and a lot of other smaller frameworks than ASP.NET. ASP.NET has 2 main frameworks from Microsoft, WebForms (an utter piece of crap) and ASP.NET MVC (the reason I started getting into ASP.NET development). While PHP has more frameworks, I find that ASP.NET MVC 3 framework is better than any of the PHP frameworks.