Bristol - Exeter must be one of the fastest journeys that doesn't (usually) involve London bound services - typically 58 minutes for 76 miles (when the Weston stoppers don't get in the way at Worle). There used to be a non-stop Sunday service which did it in 48 minutes IIRC and could be as little as 44 minutes with a clear run. Bristol - Taunton is faster still at 31 minutes for 45 miles.
There are some fast London bound services which go that way rather than the Berks and Hants, but not many - the majority of fast services are XC.
I think that’s a fair point, but arguing that a car (limited legally to 70mph at best and subject to traffic and congestion en route) is not better than a direct rail service (supposedly capable of 125mph and timetabled to have a clear run through) isn’t the best defence. I don’t expect trains to teleport and accept that station stops and other issues mean they have to stop, which brings deceleration and acceleration time) but even still why is the train so slow? Is it the technology, the rails, the station stops?
I don't think there are any 125mph sections between Stoke and Bristol unless Stafford - Wolverhampton permits non-tilting trains to run that way - otherwise it's generally 100mph south of Birmingham and 110mph northwards. However, Stoke - Bristol, as with most journeys on the railways, is a compromise. If there were enough people to merit a non-stop service, then one might run. As it is, it is clearly and not unreasonably felt that it is worth stopping trains at the not insubstantial hubs of Wolverhampton and Birmingham, along with Stafford for WCML connections and Cheltenham as a Cotswolds hub.
Added to that is the need for a reliable timetable. A car can go as fast as is legally permitted without worrying about other traffic; a train has to fit into a congested timetable, particularly around Birmingham New Street. If you pathed a Voyager to run as fast as possible with no contingencies, it might beat the car comfortably 10% of the time at best, but it would be hopelessly unreliable the other 90%. Once a XC train misses its path even with padding allowances, it frequently gets later and later as it gets stuck behind the stopping services it was supposed to be in front of.
There's also the fact that Stoke - Bristol trains come from Manchester and are heading to Bristol / Exeter or Bournemouth, meaning they have to be carefully timed to cross multiple London services which will usually get priority along with stopping services.
2h 20m may seem like a lengthy journey, but as long as nothing goes badly wrong, it should be a reliable journey time. A sub 2 hour time might sound attractive, but not if it's as accurate as a North Korean news channel. Driving can be much more variable although I accept that at quieter times it can be much faster. However, whilst some people find driving enjoyable (when the roads are quieter at least), the driver can do significantly less than a train passenger can (although I accept that when on a wedged service, there may not be much option but to stand and perspire).
I suspect another factor is that people feel far more in control of their journey when driving than on a train as they are choosing when to travel, which route to take etc. However, that rather ignores the fact that other road users also have a lot of control over your journey and not in a positive way.
Back OT, I did Colchester - Walton on the Naze a few weeks ago and was rather surprised to find that I'd only travelled 19 miles after 51 minutes, considering most of the route was on a double track route with relatively fast London services as far as Thorpe-le-Soken.