Mi sa che hai bisogno di leggerti qualche guida, perché questa è una domanda fatta da una persona che parte da 0.
Inoltre non sarebbe male leggersi il regolamento per il titolo della discussione...

E' un po' come chiedere che differenza c'è tra una macchina e una casa.
Le macrodifferenze sono:

HTML, XHTML, XML (i principali):
- Linguaggi di marcatura (markup). Sono mezzi per descrivere e trasportare le informazioni.
- Interpretati lato client dal browser. Il browser decide come trattare i vari tag e le informazioni da essi descritte.

ASP, PHP, Java (i principali):
- Linguaggi di programmazione (variabili, condizioni, cicli...).
- Le istruzioni sono eseguite lato server. Possono essere usati per mandare dati al client, per comporre, o completare la composizione, di una struttura di markup (che poi verrà processata dal server).

Esempio: una semplice maschera di login.
- Form di inserimento utente e password in HTML
- Sul submit i dati vengono mandati al server che "decide" (ASP, PHP, Java) se l'utente è loggabile o meno.
- Composizione della risposta in HTML da mandare al browser.
- <div class="messaggio">Ciao pippo, ti sei loggato</div>.
- <div class="errore">Utente o password sbagliata</div>.