L'HTML est le langage communément utilisé pour mettre en page des informations et les publier sur le net. L'ASP et le PHP sont des langages de programmation scriptés qui permettent de générer des pages HTML selon les informations envoyées par le navigateur.
Par exemple, moi qui suis en train de rédiger un message pour te répondre, la page message.php3 sait qui je suis et me présente mes smilies personnels. La page est générée au niveau du serveur.
La différence entre PHP et ASP, c'est que ASP est produit par Microsoft et se base sur la syntaxe Visual Basic par défaut (rien n'empêche l'usage d'un autre langage comme JavaScript par exemple). PHP, à l'opposé, a une syntaxe proche du C/C++ et est développé par une vaste communauté de développeurs selon la philosophie de l'Open Source, sous license GPL.
Ton navigateur n'a absolument que faire d'ASP ou de PHP du moment que le contenu de la page est compréhensible pour lui, donc de l'HTML et éventuellement du script.
On parle donc de script server-side (ASP, PHP: pour générer les pages web) et de script client-side (JavaScript, VBScript: pour rendre la page moins statique que le permet le HTML).