The average train between Roman Baths and Edinburgh takes 7h 39m and the fastest train takes 6h 52m. The train service runs several times per day from Roman Baths to Edinburgh. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run every 3 hours between Roman Baths and Edinburgh. The earliest departure is at 1:01 AM at night, and the last departure from Roman Baths is at 4:11 PM which arrives into Edinburgh at 11:06 PM. All services require a transfer at Bath Spa and take an average of 7h 39m. The schedules shown below are for the next available departures.

6h 59m • 1 change

7h 3m • 1 change

6h 55m • 1 change

6h 59m • 1 change

12h 8m • 1 change

6h 59m • 1 change

7h 3m • 1 change

6h 55m • 1 change

12h 8m • 1 change

6h 59m • 1 change

7h 3m • 1 change

6h 55m • 1 change

12h 8m • 1 change

6h 59m • 1 change

7h 3m • 1 change

6h 55m • 1 change

12h 8m • 1 change

7h 2m • 1 change

7h 1m • 1 change

6h 56m • 1 change
Want to know about travelling from Roman Baths to Edinburgh? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Roman Baths to Edinburgh. However, there are services departing from Roman Baths station and arriving at Edinburgh station via Edinburgh Waverley. The journey, including transfers, takes approximately 7h 39m.
Roman Baths to Edinburgh train services, operated by Great Western Railway (GWR), depart from Bristol Temple Meads station.
Roman Baths to Edinburgh train services, operated by Great Western Railway (GWR), arrive at Edinburgh Waverley station.
Book your Roman Baths to Edinburgh train tickets online with Great Western Railway (GWR) and Cross Country.
The distance between Roman Baths and Edinburgh is 511.3 km. The road distance is 710 km.
Cross Country operates a train from Bristol Temple Meads to Edinburgh Waverley every 3 hours. Tickets cost £220–320 and the journey takes 6h 37m.