Ein Web-Client sendet also mit Hilfe des HTTP eine Anfrage an einen Web-Server, woraufhin dieser ihm ein HTML-Dokument zurückschickt. HTML ist die Seitenbeschreibungssprache im WWW, die die Realisierung der Hyperlinks ermöglicht. Dadurch ist die einfache Navigation zwischen Servern auf der ganzen Welt erst möglich. Der Web-Client interpretiert die HTML-Anweisungen aus dem erhaltenen Dokument und präsentiert dem Benutzer die Web-Seite.
Um dynamische Web-Seiten auf dem Client zur Verfügung zu stellen, muß nicht unbedingt erst ein Programm auf dem Server aufgerufen werden, wie das bei CGI-Programmen der Fall ist. Der Server kann z.B. ein in einem HTML-Dokument referenziertes Java-Applet als Antwort auf eine Anfrage zurücksenden. Ein Java-Applet ist ein in Java kodiertes Programm, das auf dem Client ausgeführt wird. Dieser muß allerdings über einen Java-Interpreter verfügen, was mittlerweile in jedem neueren Browser der Fall ist. Eine weitere Möglichkeit wurde von Netscape durch die Entwicklung der Programmiersprache JavaScript bereitgestellt. JavaScript-Anweisungen werden in den HTML-Code eines Dokuments eingebettet und somit zusammen mit dem Dokument an den Client übertragen. Der Netscape-Browser interpretiert daraufhin die JavaScript-Anweisungen und stellt den erzeugten Inhalt dar. Beide Mechanismen stellen komplexe Funktionalitäten zur Verfügung, um HTML-Seiten dynamisch zu gestalten. Weitere Mechanismen und neue Entwicklungen diesbezüglich (wie z.B. VRML oder Cascading Style Sheets) sollen hier nicht weiter erläutert werden.