Another line of development: Mandrake (today Mandriva, after merging with the Mandrake offshot Conectiva) was derived from Red Hat, mostly diverged by emphasizing KDE instead of Gnome as a default desktop environment. The Fedora project was born as a collection of packages for Red Hat, and later took over the Fedora distribution when Red Hat Enterprise Linux became a separate distribution. There are several minor distributions that are Fedora-derived. Then there are distributions like CentOS that take the sources for RHEL and recompile them (replacing the Red Hat logos and other branding), and distribute the results without the need for a maintenance contract) and Scientific Linux, who do essentially the same as CentOS but add some packages for use at Fermilab, CERN and others. Then there is Oracle Unbreakable Linux [sic], also a Red Hat clone.
What are the differences? As this is open source, if somebody isn't satisfied with what their favorite distribution is doing, they can fork it and go their own way. Setting up the whole infrastructure (webpage, download sites, build farms) isn't cheap/easy (even though most (if not all) of the e.g. Fedora infrastructure sources are available free, and I suppose Debian's too, this is just a small piece of the job). But much more importantly, getting a bunch of dedicated volunteers to package software, keep up with upstream, fix bugs, answer questions, and so on is a huge undertaking. It is certainly much easier to just handle the part that bothers you most (i.e., set up a collection of alternate/supplemental packages for some distribution) and leave the rest to the parent distribution, or even select packages from said parent without much other added value as the base of what you are trying to do. The differences will depend heavily on what the derivative is trying to accomplish, the resources it has available, and the time elapsed. On the other hand, all distributions are built on the same basic infrastructure of open source software (the Linux kernel (even with Debian's BSD-kernel based line and such), GCC, glibc, X.org, Gnome, KDE, ...), so there is an overarching commonality there.