It's a bit more than just the front end... Linux is really just the kernel of the OS, so all distros use the same kernel, but they're free to change the other parts.
The different GUI would really be due to the different so-called Desktop Environments, so you could have Yellow Dog Linux running KDE looking different to a Yellow Dog Linux running Gnome or one running Xfce. They're the same OS underneath, but the GUI makes them look different.
This is possible because the Desktop Environment is completely separated from the kernel... as opposed to Windows, for example, where it's all lumped together, and although you can configure Windows to look how you want it it's still the same GUI from one Windows box to another (it's just the dekstop background that changes, or the colour of dialog boxes, etc...).
However, there are differences between various distros... for example, distros based on the Debian release, such as Ubuntu, use the apt-get package management solution, whereas other distros use something different (RedHat & Fedora use the RPM system, Gentoo uses the emerge system, etc...).
But, there are kernel-specific things that are similar across all distros... e.g. the file system is mostly consistent (all distros have the same hierarchical layout, e.g. /home is always the "My Documents" folder) and most of the commands are common (you can always use grep or ps or rm -rf * on a Linux distro).
Hope that makes sense.