There are 7 ways to get from Middlesbrough to Perth by train, bus, car, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train
best- Take the train from Darlington to Edinburgh Waverleytrain London Kings Cross - Edinburgh / ...
- Take the train from Edinburgh Waverley to Perthtrain Edinburgh - Perth / ...
4h 47m£67–159Bus via Perth station
cheapest- Take the bus from Bus Station Stand Z to Edinburgh, Bus Stationbus 598
- Take the bus from George Street to Perth stationbus Ember
6h 8m£23–48Bus
- Take the bus from Bus Station Stand 11 to Edinburgh, Bus Stationbus Ukx010 / ...
- Take the bus from Edinburgh, Bus Station to South Streetbus M92
6h 7m£25–42Drive 187.6 mi
- Drive from Middlesbrough to Perthcar 187.6 mi
3h 42m£47–68Train, fly to Glasgow Airport
- Take the train from Middlesbrough to Newcastletrain
- Fly from Newcastle (NCL) to Glasgow Airport (GLA)plane NCL - GLA
- Take the train from Glasgow Queen Street to Perthtrain
7h 33m£99–237Train via Newcastle upon Tyne
- Take the train from Middlesbrough to Newcastletrain
- Take the train from Newcastle to Edinburgh Waverleytrain
- Take the train from Edinburgh Waverley to Perthtrain
4h 58m£55–153Train, fly to Edinburgh Airport, bus
- Take the train from Middlesbrough to Newcastletrain
- Fly from Newcastle (NCL) to Edinburgh Airport (EDI)plane NCL - EDI
- Take the bus from Edinburgh Airport to Perth stationbus
7h 39m£54–202
Middlesbrough to Perth by train
Comparing Your Travel Options
The cheapest way to get from Middlesbrough to Perth is to bus which costs £25 - £45 and takes 6h 7m.
The fastest way to get from Middlesbrough to Perth is to drive which takes 3h 42m and costs £45 - £70.
No, there is no direct bus from Middlesbrough station to Perth. However, there are services departing from Bus Station Stand 11 and arriving at South Street via Edinburgh, Bus Station. The journey, including transfers, takes approximately 6h 7m.
No, there is no direct train from Middlesbrough to Perth. However, there are services departing from Middlesbrough and arriving at Perth via Darlington and Edinburgh Waverley. The journey, including transfers, takes approximately 4h 47m.
The distance between Middlesbrough and Perth is 230 miles. The road distance is 188.7 miles.
The best way to get from Middlesbrough to Perth without a car is to train which takes 4h 47m and costs £65 - £160.
It takes approximately 4h 47m to get from Middlesbrough to Perth, including transfers.
Middlesbrough to Perth bus services, operated by FlixBus, depart from Bus Station Stand 11.
Middlesbrough to Perth train services, operated by London North Eastern Railway Limited (LNER), depart from Darlington station.
The best way to get from Middlesbrough to Perth is to train which takes 4h 47m and costs £65 - £160. Alternatively, you can bus, which costs £25 - £45 and takes 6h 7m.
What companies run services between Middlesbrough, England and Perth, Scotland?
You can take a train from Middlesbrough to Perth via Darlington and Edinburgh Waverley in around 4h 47m. Alternatively, you can take a bus from Bus Station Stand 11 to South Street via Edinburgh, Bus Station in around 6h 7m.
- Website
- britishairways.com
Flights from Newcastle to Glasgow Airport via London Heathrow
- Ave. Duration
- 4h 6m
- When
- Monday to Wednesday
- Estimated price
- £55–240
Flights from Newcastle to Glasgow Airport via Dublin
- Ave. Duration
- 4h 5m
- When
- Every day
- Estimated price
- £40–210
Flights from Newcastle to Edinburgh Airport via Dublin
- Ave. Duration
- 3h 55m
- When
- Every day
- Estimated price
- £40–210
Flights from Newcastle to Edinburgh Airport via London Heathrow
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- £55–240
Train from Darlington to Edinburgh Waverley
- Ave. Duration
- 1h 56m
- Frequency
- Hourly
- Estimated price
- £50–75
- Website
- London North Eastern Railway Limited (LNER)
Train from Edinburgh Waverley to Perth
- Ave. Duration
- 1h 13m
- Frequency
- Once daily
- Estimated price
- £19–27
- Website
- London North Eastern Railway Limited (LNER)
Train from Newcastle to Edinburgh Waverley
- Ave. Duration
- 1h 24m
- Frequency
- Hourly
- Estimated price
- £40–60
- Website
- London North Eastern Railway Limited (LNER)
Train from Edinburgh Waverley to Perth
- Ave. Duration
- 1h 13m
- Frequency
- Once daily
- Estimated price
- £19–27
- Website
- London North Eastern Railway Limited (LNER)
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Bus Station Stand 11 to Edinburgh, Bus Station
- Ave. Duration
- 3h 45m
- Frequency
- Every 3 hours
- Estimated price
- £16–24
- Website
- Flixbus
Bus from Bus Station Stand Z to Edinburgh, Bus Station
- Ave. Duration
- 3h 45m
- Frequency
- Twice daily
- Estimated price
- £16–25
- Website
- Flixbus
Want to know more about travelling around United Kingdom
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Travelling to the UK: What do I need to know?
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
Booking & Getting There
Middlesbrough to Perth bus services, operated by FlixBus, arrive at Edinburgh, Bus Station.
Middlesbrough to Perth train services, operated by London North Eastern Railway Limited (LNER), arrive at Edinburgh Waverley station.
Yes, the driving distance between Middlesbrough to Perth is 189 miles. It takes approximately 3h 42m to drive from Middlesbrough to Perth.
Book your Middlesbrough to Perth train tickets online with Omio.
Book your Middlesbrough to Perth bus tickets online with Omio.
There are 555+ hotels available in Perth.







