The web browsers are the most popular
hypertext browser programs these days.
Basically, a web browser is a web browser if it can download files using HTTP (Hypertext Transfer Protocol) - sometimes over SSL, parse and display hypertext stored in HTML (Hypertext Markup Language) format, and allow following of the hyperlinks in the HTML file.
However, from very early on, the web browsers have also had more abilities to do than this. The very earliest web browser (unimaginatively called WorldWideWeb by the inventor of WWW and the browser's programmer, Tim Berners-Lee) ran in NeXT and had thus graphical display abilities and also displayed images embedded to the HTML pages.
Also from early on many web browsers integrated earlier popular web services to the programs, making the Internet services attractive to the users. Mosaic, one of the first very popular browsers, did Gopher and FTP (and also Usenet/NNTP, if I remember correctly) - as did the first successful commercial browser, Netscape. The browsers have grown to become end-all Internet usage solutions (with integrated e-mail, Usenet news, and kitchen sinks), but the recent trends have also backed down to allow people who just want the web to get the browser for less.
Typically, web browsers offer following navigational features:
- Back and Forward buttons to move back and forth in browsing "history"
- Display of browsing history
- Reloading of page
- Home page (The default page the browser loads when it's started, can be fairly arbitrary or just blank)
- bookmarks to store frequently visited or otherwise interesting sites in the web
- Often some sort of integration to popular search engines (and also some browsers integrate further to other services, which may or may not be all that desired).
Often, web browsers are capable of displaying various forms of data: Text (in HTML or plain text formats, the HTML may also contain specific formatting either through legacy tags or CSS stylesheets), images (often supported formats include PNG, GIF and JPEG), and sometimes embedded multimedia objects or other types that are implemented in form of browser extensions (MIDI or other sound files, Java applets, Macromedia Flash, and so on). Also, many browsers can use client-side scripts; most support JavaScript/ECMAScript. Many browsers don't necessarily need to support all this, and some have features to turn off support for some feature or allow partial support - for example, in Mozilla, it's possible to block images from particular sites, or disable support for certain scripting features for certain sites.
(My personal web browser favorites include Mozilla, w3m and Lynx - the first for casual use, the latter two for use with ssh or mobile Internet connections...)