It is poweful no doubt, but if we are talking about classes only - Shield gives a wizard 18 plus dex, where a fighter is at 20 in plate and shield (or more with magic items). So it is +5 to the Wizard AC, but it is not 5 better than a fighter and that is using every single reaction to get that, where a fighter really is "all the time" with a bunch more hps. Moreover at 20th level with a 23 AC (Mage Armor, Shield Spell, 20 Dex) you are going to be hit most of the time and you have a lot less hps unless you are burning slots on upcast false life.
Agonizer's scorcher is weak damage at 20th level. A fighter is getting 4 attacks a turn, that is over 38 damage if he is a sword and board with no bonuses from subclass or anything else.
AS is 13.5 damage damage on a failed save and while you can get more than one enemy, you are rarely going to get more than 2 and enemies save more often than the fighter is going to miss.
What I said was you are not doing 95% of the tankability of a fighter while doing as much damage and I think this is a good example, assuming max dex with shield spell you are about 80% of a fighter in terms of tankability (better AC, fewer hps), and doing about 40% of the damage.
The problem is, you're ignoring all of the
much higher level damage spells the Wizard
can throw in if they wish, while counting the Fighter's resources like Action Surge.
Fire bolt already gives really reliable damage output, and you've pointed out
toll the dead which gives 4d12 (especially tasty against the big meat sack type monsters which often have weak Wis saves.) The former 4d10 all the time at +5 hit bonus; the "tanky" Fighter (rapier/longsword and shield) can put out at most 4d8+20 all the time. That's 22 vs 18+20 = 38, or (22/38) ≈ 57.9% of the Fighter's output without counting crits, which would favor the Wizard (because crits don't affect static damage, only rolled damage.) If we instead count the 4d12
toll the dead, it becomes 26 vs 38, or ~68.4% of the Fighter's reliable damage output.
Throw in but a single
fireball that hits multiple targets or a single harder-hitting single-target spell, and the gap narrows further.
Plus? You're comparing 20th level characters. Cantrips scale up to max at 17. Even before getting Spell Mastery,
fire bolt is doing 4d10 on a hit vs. the Fighter's 3d8+15. 22 vs 13.5+15 =28.5. That's now almost 80% (77.2%) of the "tanky" Fighter's reliable damage output, which
any Wizard can replicate, and which will get
more favorable if crits are factored in. (E.g., assume both have a 55% chance to hit and a further 5% chance to crit. That's .55×22+.05×44=14.3 DPR vs .55×13.5+.05×27+.55×15=9.3265 DPR, meaning the Wizard actually does MORE damage reliably than the Fighter does on average!) The big difference is, the Wizard is chunkier. The Fighter is very unlikely to miss all three attacks (0.4^3 = 0.064, so missing
all attacks is about as likely as any one attack critting), whereas the cantrip-user is all or nothing, either it's 22 average (44 if crit) or it's zero.
And if we bring in short-rest resources like Action Surge, the Wizard can
easily deal an extra, comparable chunk of damage with a single 3rd-4th level spell. Something they can do several times a day...while still having their
big guns in reserve.
Bladesingers are even worse, because
they could at level 18 make
shadow blade a Spell Mastery spell. Now they're dealing 2d8+5 psychic damage per attack and can make two attacks per round,
one of which can be a cantrip.
2d8+5 + 4d12 = 9+5+26 = 40 damage if the attack lands and the save is failed. Even at level 20
and assuming a greatsword, the Fighter is only getting 4d12+20 = 46 damage. Switch to
fire bolt and allow for crits, and the Bladesinger wins on reliable damage. Each Action Surge needs only a single spell slot to match for damage output, especially if the Wizard has AoE damage spells.
The Bladesinger gives you
easily 80% of the Fighter's combat prowess...while still having
at least half of the baseline Wizard's kit left over to do all the things Fighters have
zero features to interact with.
Assuming maximum dex on the Wizard (which is a big assumption)
No, it's not. Not at level 17+. You have four ASIs at that level. Int would be maxed out by level 8. Dex by level 16. At max level, you even have a free feat to play with (or get more Con.) If you qualify, Elven Accuracy is even better.