Dungeons and Dragons 3.5 was absolute nonsense balance-wise, but it was remarkable because it was imbalanced in a whole variety of different ways that are good object lessons. So, rather than one huge master-post explaining it, here’s one example:
The Accidentally Overpowered
If you played D&D3.5 and you were into it, you knew you could spend hours working on a character, combing through dozens of races and classes and prestige classes, and even if you weren’t going to scrape through everything to milk every single possible advantage, it was still not uncommon to see builds like Wizard 5/Really Strong Wizard Prestige Class 10/Archmage 5.
That, however, is something you work for, something that comes at the result of a lot of system mastery, and, speaking as someone who had a lot of that mastery and really loved it, it was nice. It was good. I liked that. I don’t even feel that that was, itself a problem (though we’ll get to that).
The problem that cropped up in 3.5, and you could see it happen in people’s stories of their games and problems adjudicating how characters work, in that some characters could, completely accidentally, be utterly honking busted, and those characters could be wildly out of whack with their friends and party members without ever trying to be. If your party featured a composition of a fairly boring Fighter, Cleric, Rogue and Sorcerer, one of those four characters is absolutely in a league of their own compared to the others, and as players play, it’s going to come out and get noticed.
Or what about an arrangement like Ranger, Druid, Barbarian and Wizard? The barbarian is better than Ranger, the wizard is better than both and the Druid has a single class feature that’s better than the Ranger.
The issue isn’t that a player could work to be broken, the issue is that players could accidentally be so good that other people would completely replace another character in the party, and if anyone noticed, it was just straight up feels-bad territory. It was really obvious – and it got worse as people levelled up and you had more room, more opportunities to make mistakes! What makes it even worse still is if players went and did stuff that was redundant! Fighter, Ranger and Barbarian were all the most easily grasped, handleable classes, and if a party has two of them, one of them was going to notice the gap!
Well, if they looked.
So you had to hope they didn’t look.
That’s not a good solution to the problem.
Edit: I did drop those examples very quickly, since knowing them isn’t super important to the point. The issue is characters were very unbalanced in ways it was easy to do accidentally. Nonetheless, because it might be interesting:
The basic classes focused on melee damage with a full attack bonus in 3.5 were the fighter, the ranger, and the barbarian. The fighter got a bonus feat every even level, the ranger got a bonus feat to start with, and the barbarian got a suite of nice special abilities that improved them in combat, and which fed with one another. Of these three, while they were reasonably comparable to one another, the ranger was slightly weaker than the fighter, and both the fighter and ranger were markedly weaker than the Barbarian, who could do their jobs very straightforwardly and simply.
In the spellcasting suite, Sorcerers were the fairest, most sensible of the casters, because they were the weakest. Without going into the specifics, one developer didn’t like them much and wanted to ensure they were punished for not being Wizards. I’m not kidding. Point is, Sorcerers were a modestly fairer spellcaster.
Wizards were broken. Wizards could do everything, including spells that made them great fighters. They were a full spellcaster with a huge range of options and all they had to do to be broken was to spend gold to buy the spells, which were always affordable.
Clerics were more broken. They had better spells, because they were meant to be buffing the party, except the cleric could just buff themselves and do so permanently, and they didn’t have to search them out, and their god would not limit them from having all but the tiniest number of them.
Then, the other full spellcaster is The Druid. The Druid has an animal companion. The animal companion is basically a free ability for the druid: it doesn’t really take anything from the druid to use it. At level 1, the animal companion is as good a fighter as the fighter. At level 4, the animal companion is a better fighter than the fighter. This is in addition to full spellcasting and the ability to transform into a bear for hours at a time, to also fight better than the fighter.
And the Druid was a full spellcaster who could use all their spells, which were all really good.
Wizards were busted, but clerics were busted on roller skates and druids were busted in rocket skates.
The Rogue, who got mentioned, was one of the better characters for doing melee damage who also didn’t get a bunch of useless crap that didn’t matter and instead got to do a bunch of cool stuff like hide from fireballs.