Of course people quickly realised it would be good to have a less cumbersome means of having several programs open at once, as well as a means of displaying graphics as well, and this led eventually to the X11 interface, usually referred to simply as X. X provides the protocol for displaying graphics, creating and moving windows, and interacting with the mouse and keyboard. It also manages access to the display, so that remote machines can open windows on the local machine. For this reason the X system on the local machine is sometimes called the X server, because it provides X functionality to the remote machine.
Linux provides the operating system, and X provides the framework for displaying graphics and windows etc. Built on top of X is the window manager, a piece of software that provides menus, icons, toolbars and generally manages the various windows! There are two major window managers in use today: Gnome and KDE. The differences need not concern us here, but they both provide extensions to the X11 protocol and applications designed for one may not work on another.
It is common for window managers to provide several `screens', called `virtual desktops', that act like graphical versions of pseudo-terminals. Rather than minimising or closing windows to make space for a new application you can switch to a fresh `desktop'.