I have resisted the urge to color code. I have rebuffed the attempts of each different piece to have it's own unique category. I've piled everything onto our very large dinner table and sorted into the most obvious divisions based largely on sheer number of pieces.
I've purchased 6 large flat clear plastic drawers and I am NOT dividing them up further (although I really want to!). The boxes allow for shuffle and search without overflowing. They also put away easily into drawers without the nuisance of lids to attach/open/close, and are light enough for kids to carry around house.
It became clear that if I ignored all the black swans, that lego fell into the fat, flat, or skinny categories quite easily. Now I've filled up all but one drawer. And I've got four smaller piles left.
All the really small stuff which could fit into their bigger drawers. Ditto the roof pieces, which straddle fat and narrow categories. The people (generally also little) and weird exceptions which can also be big but are too much for the special/functional drawer which has all the wheels, gears, hinges, pulleys, doors, windows etc.
Today is a new day and I know the answer is near. The answer may simply be, "for pete's sake, get it all off the table so we can have dinner".