No. On some services (e.g. the Bournemouth to Manchester north of Reading at just about any time of day except before 0800 at a weekend) a reservation is about the only chance you get of a seat.
Certainly don't agree with a premium price for reservations (unless it can actually be refunded by occupying the seat); fares are already expensive enough on long-distance routes like XC and to increase it further for the only realistic way of getting a seat is not good.
In an ideal world, there would be clearer segregation of long distance and local services as they do in some continental countries and the longer-distance ones would be reservation-only; the problem with the above XC route, for instance, is that it simply tries to serve too many places. Compare that to say ICE services in Germany which are much more limited stop with non-stop runs of 50 miles or so commonplace (thinking of Frankfurt to Munich for instance, in which some but certainly not all of the route is on dedicated high-speed track). That said Birmingham to Bristol, with only the Cheltenham stop, is somewhat reminiscent of continental inter-city travel.
The problem is that our network doesn't have the capacity for such a setup. If you had a quad-track Southampton to Winchester, for instance, you could run more SOU-Winchester locals and make Winchester a pick-up-only (northbound) stop on the XCs to move the local journeys onto the local services. Unlikely to ever happen of course though.
Nonetheless perhaps intelligent planning by the operators to try and balance out loads and prevent certain services serving all the busiest stations (as an example, the XCs which terminate at Reading are typically significantly quieter than the Bournemouths for instance as the Bournemouths serve large numbers of busy stations; would swapping the Manchester and Newcastle destinations round, or running the Readings via Coventry and Bournemouths via Solihull help?)