I see X11 and Wayland as display protocols that tell to render things on the screen, for example to Desktop Environments like Gnome or KDE Plasma. X11 wasn't originally designed for this purpose, and its codebase is very messy and 'hacky,' which led to the development of Wayland.
| X11 | Wayland |
|---|---|
| Legacy | Modern |
| Many issues due to being legacy | Many issues due to being Modern |
| Old | New |
| Stable | Experimental |
in short.