Speaking of, I find it funny there are faster trains to Welwyn North than Welwyn GC at peak...
This is a quirk of history and circumstance, rather than a deliberate policy decision.
Back in the 90s, the service consisted of 2tph KX-Cambridge, most of which were fast to/from Welwyn GC. This was supplemented by 2tph KX-Letchworth, which called at places like New Southgate, Oakleigh Park, New Barnet, Potters Bar, Hatfield then all stations to Letchworth (the exact calling pattern varied slightly). Note that some of the latter services were booked for class 313s.
The Capacity Increase Study resulted in the “Seats for you” timetable brought in by FCC. This essentially split the Letchworth service in two. By terminating the Letchworth service at Welwyn GC, it allowed the Letchworth path to be reused for an extra 2tph outer-suburban service to Royston, providing desperately needed extra capacity at places like Hitchin, Letchworth, Baldock etc etc.
In order for Knebworth and Welwyn North to maintain their frequency, they got calls on the outer-suburban service, though in most cases each service called at only one. My memory is a bit faded but I think Knebworth may have got some calls in Peterborough services to make up the balance. With Knebworth and Welwyn North gaining faster services, this in turn created some space on the Cambridge stopping services, which gradually gained calls at Hatfield, and IIRC eventually Potters Bar in some cases as well (note Hatfield’s usage exploded during all this time).
As you say, Welwyn Garden City lost out on fast services, but did gain 2tph to/from KX, often formed of 8-car trains, and many were class 365 as well. So what Welwyn lost in terms of fast services they gained in terms of capacity, having peak services starting there was really popular.
This remained the situation until 2018 give or take some tweaks here and there. Under the Thameslink service the Welwyn starters are effectively like-for-like replaced with the Sevenoaks services, the Cambridge stopping service remains as is but all services now stop at Hatfield and Potters Bar (and latterly Alexandra Palace). The Royston services initially became the Baldocks, disappeared for a bit, returned in more limited form as Letchworth services, and then we have gone full circle back to a Letchworth short service and a faster Cambridge service but this time avoiding Welwyn Garden City.
Honestly … 4tph for Welwyn Garden City isn’t a bad service, 2 of them starting there so people can have pick of the seats. The two things that need to happen are the Alexandra Palace and New Barnet calls ditched, and make the whole thing work reliably so services don’t get stuck behind Moorgate services.
There’s a separate argument to question whether Knebworth and Welwyn North really justify 4tph. But if one concluded they didn’t, this would just mean the existing services run through non-stop. They’re not going to serve Welwyn Garden City as it’s too difficult to path.
Worth mentioning also that Welwyn Garden City’s fast services to Finsbury Park were I think more an attempt at managing capacity than to provide a fast service. The journey time was pretty much same as services calling at Hatfield and Potters Bar. Even back in the 90s the morning peak services would leave Welwyn Garden City with all seats taken and people standing, so there really was no point in calling at Hatfield or Potters Bar. The reason for a lot of this was insufficient capacity further north, so you’d get people from places like Hitchin boarding the stopping services as it was their only prospect of getting a seat. The introduction of the Royston services greatly eased this, although didn’t entirely eliminate it.