Most HTTP clients are GUI programs that understands HTML. HTML elements are displayed on the screen, while interactive elements are, well, interactive. HTTP clients also understand HTTP (the protocol), so it knows how to communicate with an HTTP server.
Not all HTTP clients are GUI-based. In Unix/Linux, Lynx is a text-mode web browser. Strange as it may sound, Lynx actually has a bit of applications, especially on systems that are minimalist, or when the GUI component of an OS is broken.
Other HTTP clients are command-line based, and do not even have a text user interface. Examples include wget and curl. These programs are used by other shell scripts to interact with web sites in an autonomous fashion.