Generically, a window manager is code that keeps track of GUI windows, their placement, and their visibility. Under most non-X window systems, the term is not seen much, because the window manager is an integral part of the window system. However, due to the X Window System's "non-policy policy" (that is, "We provide mechanism, not policy"), combined with historical accidents, the window manager is a separate program under X. The rest of this writeup is concerned solely with X window managers.
Most people will tell you that essential functions of the window manager include drawing title bars, resize handles, and close boxes, as well as providing a desktop background and a desktop menu. These are in fact only features that are frequenly integrated into the window manager. They are not essential, as demonstrated by ratpoison. Most window managers do provide some amount of look-and-feel to the window system, and some provide full, usable desktop features all by themselves, like WindowMaker. Many window managers provide virtual desktops, including the most popular ones.
The plethora of available window managers contributes to the many-faceted nature of the X11 user experience, and is one of X's most polarising features. Critics claim that the inconsistency of X window managers relegate X to a niche market of power users and hobbyists. Fans claim that the infinite flexibility of the system, including the ability to change window managers, and thus basic look-and-feel elements, on the fly contribute greatly to the power and utility of X. Whatever the effect of the various window managers is on the X Window System in general, these are currently most well-known window managers:
An overview of window managers can be found at http://www.plig.org/xwinman
This writeup is copyright 2002 D.G. Roberge and is released under the Creative Commons Attribution-NonCommercial-ShareAlike licence. Details can be found at http://creativecommons.org/licenses/by-nc-sa/2.0/ .