You can get a train to Edinburgh from Reading station'so you don;t have to go all the way into London and switch terminals. If you have not made reservations yet, look into this on The Trainline.
I use Reading Station (a great rail junction( all the time and I know I have seen Edinburgh trains.
I don't think they run that frequently though. Your train from Bath will go through Reading on its way to London. I do believe that there are a few trains from Oxford that go to Edinburgh as well, on the Cross COuntry line that goes to Manchester, Sheffield,etc. You might have to change in Sheffield though.
I would find not having to go from one railroad terminal to another in London much easier.
Good luck!