Having travelled many sections of the GWR network (as well as on various other services in the same or nearby area), there is no simple clear cut answer.
I've had problems on GWR, TfW and Cross-country. I can't really comment on other operators, as I don't travel on them anywhere near as much.
Unless a train is fitted with a satellite system, on-board Wi-Fi has to use nearby 4G or 5G (where available) mobile masts.
So in countryside areas, in cuttings or tunnels, the signal may be weak or non-existent.
The other problem is that if the train is busy, more people are likely to be trying to use the Wi-Fi at the same time, so the available bandwidth gets shared between them.
How good your own 4G or 5G mobile signal signal is is also affected by the same issues. But if you are using a different provider, your service may be better than that for the train. Or it may be worse. Because not every network uses the same transmitter sites.
As well as the above, sometimes some devices connect, but for some reason the internet connection is not established. I've had it where my pad can't get a internet connection but using the exact same Wi-Fi in the same seat of the same carriage, my 'phone can get the internet via the Wi-Fi...
And then occasionally a train or a coach on a train won't have a working Wi-Fi system.
For GWR, parts of Devon, Cornwall and Somerset most definitely have patchy coverage. Not as bad, but there are smaller areas of patchy coverage elsewhere in countryside areas.
Similarly elsewhere in the country.
In terms of trains, I wouldn't say IETs are any worse than the DMUs that GWR operate. I don't travel on 387s very often, so hard to compare.