So what's the point of classes then, if any class can be good at any aspect of the game?Each to his own. I love the idea that you can have a party of 3 players and have all bases covered. Personally I like the idea that I can build a fighter that is good at C. Maybe he gives up a little in Z for that.
In my example Ranger gave me the tools to most closely build the character I wanted to play. I wanted a character who had extra attack and good hit points, expertise, great social skills and a ton of spells and battlefield control and ability to disengage as a bonus action. Goblin Fey Wanderer with Fey Touched, Shadow Touched and Telepathic and a 10 constitution did that perfectly. This character had a wand of fear and she used that instead of attacking often on the first turn. She used summon Fey a lot instead of attacking. To me, knowing that your Ranger is always going to pull a longbow or a pair of shortswords on the first turn and attack all the time because he is a "Ranger" and that is what Rangers do is boring to play as a character. Sure I could do that (well with a shortbow not a long bow) and I was good at it, but it would not be as fun and at the end of the day, that is what it is about.
I don't think I was trampling anybody. I built and played the character I wanted to play and her backstory fit neatly into that concept, which is how I got it instead of picking a class and choosing a backstory to fit. Anyone else at the table could have made the same build if they wanted. Our party was a Human Evoker, Human Divine Soul, Kobold Swashbuckler and Goblin Fey Wanderer (me). We had no traditional "tank" no traditional "face" and yet it was an awesome party.
The term weakness is relative to what you are talking about. If I took Gloomstalker instead of Fey Wanderer and if I focused solely on combat, pumped constitution, took combat ASIs and feats and a combat focused race like half orc ..... if I did that, I would have had a character who was much more narrow than my character but she would have been better at melee (perhaps marginally better, but still better). If that is what you want to play, then play it!
Likewise a pure caster is a more powerful combat caster than I was, because even though I had a ton of spells, including many off-class spells; when I finished the game at 15th level, I did not have 5th-8th level spells and a full caster is a more powerful caster even if he did not have any more known spells and could not cast many more spells than I could.
There is room for all of these builds and more.
You get a lot of people on this board complaining about martials and how they are so limited, that is really because they choose to build them that way though. With races, backgrounds, feats and subclasses you can make any class good an any aspect of the game. Maybe not the best possible, but certainly good.
Either that or you have to choose which bases to leave UNcovered. Fine with me either way.This also means you can play with fewer players which speeds up the game and makes it more fun. If every party needs a Rogue for traps and a divine caster for healing and an arcane for control and bard for social and a martial for tanking ..... you very quickly find out that either people need to play characters they don't want to play or you need a huge party because 5 people wanted to be Wizards and you still need a tank, healer, Rogue, striker and face. Much better when you can have three players and have your bases covered.
That said, if I only had three players I'd absolutely allow them to have more than one PC each (usually capped at two each). Also, what often happens is adventuring NPCs are recruited to fill glaring holes, particularly healer and-or sneak; meaning nobody has to play what they don't want to play but you can still round out the party if you want to.
I have no problem with running a 12-character party if that's what they end up with; and if there's complaints about combats taking too long I can simply tell them it's self-inflicted: they didn't have to fill every gap in the lineup twice over.