My standard advice:
"Splitting" the journey into a combination of tickets may work. Use a WebTIS website (e.g.
EC,
LM etc) and click the info (i) button next to the itinerary you want, then tick 'show all calling points', this shows the places where you could "split" the journey into a combination of tickets (note the train must call on the return journey too).
In this case there are not many stations to choose from: (Slough), Reading, (Didcot Parkway), Swindon, Bath.
If you want to return the same day day, then
Day Return tickets are suitable for you.
As you have a Network Railcard, then it makes sense to split at the boundary station, Didcot Parkway.
For example London Terminals to Didcot Parkway with NSE Railcard is £14.20 CDR, Didcot Parkway to Bristol is £19.90 CDR. This isn't necessarily the cheapest, though based on previous topics, it probably isn't cheaper to split elsewhere, but you can check.
Travelling at "peak" times (which varies by route and ticket held) can be reduced by purchasing tickets with more favourable restrictions and either splitting and/or starting/finishing short, however that does not apply for travel on a Saturday/Sunday.
Not all trains call at Didcot Parkway, the train needs to call there.
CDR = Off Peak
Day Return (formerly Cheap Day Return)