Oh, not only does it have over 500 languages, nobody has the faintest idea how they’re arranged.
The traditional classification is a two-way split into Sinitic vs. “Tibeto-Burman”, but this is (as far as I can tell) a holdover from the days when Chinese, Tibetan and Burmese were essentially all that Western linguists could get their hands on good documentation of, and Burmese and Tibetan looked like they grouped together, so a binary split was proposed. Like many tentative classifications (coughNew Guineacough), everybody missed the point and it quickly became canonical.
The picture is slowly being revisited, but there are barriers:
a) Chinese linguists have to deal with politics–the CCP isn’t too keen on the idea that Sinitic might be the odd man out and that, say, Qiangic or Tibetan might be far more conservative. This exerts some pressure on work in Mainland China, though as far as I can tell it’s still valuable work so long as you read between the lines, particularly since the biggest sorce of pressure is pressure to classify Hmong-Mien and Tai-Kadai as members of ST
b) Documentation for many varieties is still scanty. Politics doesn’t help, particularly in China and Burma.
c) There is precious little inflectional morphology to work with, with the exception of Kiranti and Qiangic, which have large verbal complexes whose morphemes are mostly cognate, and Guillaume Jacques, at least, thinks they may preserve the original state of affairs–but even if so, almost all of the rest of ST has shed it. Since ST is probably around 7,000 years old, and inflectional morphology is far and away the best yardstick for classification, this makes things…difficult.
d) There’s a fad for phylogenetics at the moment, but this has the usual issues–e.g. there was recently a paper published using phylogenetics on the whole family which grouped Sinitic together with the Sal languages of the India/Bangladesh/Burma border area, in opposition to a group containing everything else–but that very same algorithm grouped Hakka, Cantonese and Min together in opposition to Mandarin, which we know isn’t correct (it’s Min vs. everything else)!
So at the moment, everybody sort of tacitly admits that Sinitic vs. “Tibeto-Burman” is probably incorrect, but nobody has a better model, so it lives on.