The X.Org project provides an open source implementation of the X Window System.
SpecsUpdate
Ranked in these QuestionsQuestion Ranking
Pros
Pro It's the de-facto display server for the Linux world
X11 is so tied up with everything in the Linux Kernel and userspace that it's become for a long time now the de-facto display server for Linux. A lot of things have been tied to X for decades now and it's hard to untie even if X has a lot of glaring problems. Because of this (and despite of X's problems), everything seems to work with X, from the WMs to the graphic drivers.
Pro Great driver support
Pro Multiplatform
Available on bsd, linux, hurd, minix, osx and even windows.
Pro Will be available at least another 10 years
It is the de-facto *nix display server. If you create a Software that runs under X11 it will also work on BSD, Solaris etc.
Pro Network aware
You can send windows to other computers or you can have multiple screens with remote logins and other things like that through X.
Pro Simple configuration
Simple text based configuration files
Pro Multiple Desktops and window managers available
Fluxbox, openbox, WMmaker, KDE, GNOME, Xfce, Cinnamon, Mate, Budgie, Enlightenment, i3, FVWM, CDE and many more are available.
Pro Extensions
You can use extrensions/plugins to add more features.
Pro Stability
Over 30 years of development.
Pro Strict separation of display server and GUI
Pro Gives you a certain degree of freedom to do what you want
When using X, you can get information on any application that is running within any other application that is currently running. Things like position, size, framebuffer, which window has focus, etc. can all be accessed by any running application.
With this in mind, there are countless customizations that can be achieved, things like changing the keyboard layout depending on the window that's focused, or creating a script that gets statistics for each key typed. The possibilities are endless.
Pro Secure
It is secure as long you don't run it as root.
Cons
Con Very complex codebase which is hard to maintain
The X stack is rather old and a lot of the things that have been added through the years feel more like hacks to make it work with newer technologies. This has made the X stack feel all over the place with bits and bobs everywhere. Making it a pain to maintain the stack in the long run.
Con Tearing
It is impossible to remove tearing from X if your driver dont support an anti-tearing option.
Con High output latency
With window manager it becomes higher.
Con Vulnerable to Keyloggers if you run it as root
Because of the ability for applications to get information between them, X is extremely vulnerable to keyloggers.