I just witnessed a company pay nearly $200,000 for a not-yet-ready-for-primetime PHP ecommerce website (I lost the contract a year ago to these clowns). It's been over 10 months of development time. The site looks wonderful, but is lacking so many ecommerce "basics", it's a joke.
I admit, I'm a lousy marketer - but here's the pitch the PHP company used:
It's "free" and "open source"!
Facebook uses it!
Linux & MySQL is "free"!
It's faster than ASP.Net!
It's faster to develop!
The truth is, the original website (written in ASP.NET) had twice the features and was completed by a single developer in 3 months at a cost of $25K (including the cost for a FULL, single CPU license of SQL Server 2008 R2 & Visual Studio Pro).
The $200K site had a team of developers, and STILL is not finished after 10 months, is half the speed (with cacheing) of the old site.
If you want to sell them ASP.Net, say "L.A.M.P. may be free, but your development time will cost more... MUCH MORE!" Facebook runs PHP, true, but they started out of an apartment where money was low and time was free. Facebook uses Oracle and MANY compiled programs these days (so that point is moot).
If you need reusability and simple code maintenance, scripted languages can quickly turn into a nightmare (including ASP here as well).
If you need performance, go with a compiled language - no scripted language will ever compete with compiled code and never will as the interpreter will always add overhead. Caching does help tremendously, but ASP.Net has caching too.
Sure, Linux is free, but Linux experts are very expensive when something goes wrong. Win server costs $$$ up front, but experts are cheap to find (and nearly ubiquitous) when something goes wrong. Connectivity to win-networks is dumb simple and rock solid, so integrating into other business systems is a breeze (accounting packages, shippers, etc) with the best user account management I've seen (though, MS did borrow a lot from Novell).
The GUI overhead that Linux people say is a big resource waster is nearly a non-issue with today's hardware. If you have an issue with it, there's the non-GUI versions of Windows Server ("Core" version) available w/powerShell.