The proof can be found at https://arxiv.org/pdf/quant-ph/0005115.pdf, the original paper by Dür, Vidal and Cirac. It shows that, if you consider a pure 3-qubit entangled state (that is, a 3-qubit pure state which is not biseparable) and every other pure 3-qubit entangled state it can be converted into via stochastic LOCC (SLOCC: a LOCC operation with a non-zero probability of success), this set of states will be one of two disjoint sets. Members of one set cannot be transformed via SLOCC into members of another. One set contains the W state, the other the GHZ state, so they are commonly referred to as the W class and GHZ class.
There is no single, universal definition of a "maximally entangled state" of 3 qubits - both the GHZ and W can be considered maximally entangled in different senses. (Note however that it is not true (as one might wonder, by analogy with the 2-qubit case) that a GHZ can be reliably converted (i.e., with probability 1, LOCC rather than SLOCC) to any member of the GHZ class. Likewise with the W.)
So, as the paper proves, there are only two classes of pure 3-qubit entangled states where a class is defined by SLOCC-interconvertability. Of course, that's not the only kind of 3-qubit state, or indeed the only way to define a class of state.