In 5e, especially with the Concentration mechanic, they have done a lot to balance casters and non-casters. Right the the 800 pound elephant in the room, that needs to be addressed for any actual solution, is that for 5e they increased the expected encounters per day for their math over earlier editions, and it doesn't match how most tables play. So the calibration point is wrong.
(Note: I'm going to talk about combat - because everyone is expected to contribute to combat. Out-of-combat also needs to be discussed, with spells+skills > skills. But that's not the scope of what I'm talking about.)
I'm going to talk about damaging spells. Damage is often one of the least effective things for a caster to do, but it gives a nice number so it can be compared to a similar number from at-will classes, which many of the primary weapon wielders are. Rogue may be the purest example, with Paladin (and Barbarian, with their slots of rage per day) as the most hybrid.
Look, I think we can safely say throwing a fireball usually does more than an Attack action, and higher level spells do even more. If casters had unlimited spell slots, they would be able to do more with each action then the at-will character could.
I think it's not controversial, though not quite as safe, to say that your average attack cantrip is less than what an at-will character will do with an attack action. This isn't about ivocation-enhanced Eldtritch Blast, or the hybrid Booming Blade/Green Flame Blade, just your basics like firebolt and chill touch or vicious mockery. (First time I insulted someone to death it was a great feeling, but I digress.) And against the feature-enhanced, possilby feat-enhanced Attack actions.
So if casters had no slots, they would do less than at-will characters.
So if never running out of slots is too much, and not having any slots is too little, then the balance point between the classes is somewhere between them.
BUT, the amount of resources given to casters requires a high number of encounters per day to balance it out so that a caster's average action is around an at-will's average action. For early Tier 2 it's usually 4+ encounters per day, and it gets higher as you climb that Tier and then ascend up to the next ones.
And that's not where DMs run commonly. So if we run 2-3 encounters per day more often than not, casters aren't forced to use enough non-slot action to bring their average down to the at-wills. Remember, running a caster out of slots isn't enough - they still have the higher average affect per action. You need to make them take non-slot actions to bring down that average.
And it's even a bit worse. The trick we use of making encounters more deadly so we can have big meaty memorable combats often favors casters. A single slot on a concentration spell that lasts for 3 rounds in a normal combat but instead lasts for 8 in a longer one is getting MORE results from that same action. A fireball that catches more foes simply because there are more is more effective, while each sword swing still only hits one. A crowd control spell that costs three actions from a CR 12 creature instead of a CR 8 creature is definitely not weaker. So what we intentionally or instinctually do to balance deadliness with fewer encounters doesn't help, and can feed, the imbalance between the long-rest resource recovery classes and the at-will classes. (And this doesn't even address the ones that are short-rest/at-will hybrids, like the Monk, Warlock, or Fighters like the Battlemaster to give three examples.)
We need to acknowledge that average effect per Action needs to balance over time, and that the calibration the designers did don't match how most people run. So the resources are too plentiful for how we actually play the game.
For an example of a d20 that hits that balance point much better look at 13th Age. All spells can be upcast, and you lose lower level slots as you get higher level slots so that your total slots does't grow like it does in 5e. Of course, they also divorce regaining slots from the player and/or outside pacing mechanism of sleeping, instead coming back every four encounters, so they can make their math a little more repeatable than 5e where it could be one encounter or five between long rests.