A desktop environment is a set of programs running on the top of an operating system which share a common graphical user interface. It is also known as graphical shell. It determines the user experience, look and feel, customisability, usability and many others aspects of a graphical experience. It is abbreviated as DE. A desktop environment can determine the whole user experience of a operating system.
Every operating system has a desktop environment but Linux is the one with multiple swappable desktop environment. Since Linux is very modular you can swap almost anything from it which also includes the DE.
Windows and OS X doesn't give you the ability to change DEs so there is not much to talk about them. But we have a lot of DEs in Linux, some of the popular ones are :
KDE is one of the most famous and customizable DEs. It also is my favourite DE. KDE is considered as the most customizable DE of all. You can customize most of the parts of your DE from the system settings and additionally you can add modules and third party applications to customize KDE even more. It is very lightweight and easy to use out of the box. It itself is "the beauty and the beast".
Gnome is also one of the most used and popular desktop environments. It is very very beautiful out of the box. It is fairly customizable and easy to use. Gnome is very good for normal people because you don't really need to customize it to get a smooth and beautiful desktop experience.
XFCE is termed as a light desktop environment with very low ram consumption and a fairly customizable desktop environment. It is the most suitable DE for old computers with weak hardwares. Basically, it is fast and low on system resources, while still being visually appealing and user friendly.