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£78–175Bus via Edinburgh
cheapest- Take the bus from Bus Station Stand Z to Edinburgh, Bus Stationbus 598
- Take the bus from George Street to Perth stationbus Ember
5h 55m£22–78Drive 187.6 mi
- Drive from Middlesbrough to Perthcar 187.6 mi
3h 42m£47–67Train, 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 34m£57–206Train 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£70–171Bus
- Take the bus from Bus Station Stand 11 to Edinburgh, Bus Stationbus Ukx010 / ...
- Take the bus from Edinburgh, Bus Station to Bus Stationbus Uk094
5h 59m£24–42Train, 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 36m£104–250
Middlesbrough to Perth by train
Questions & Answers
The cheapest way to get from Middlesbrough to Perth is to bus which costs £23 - £45 and takes 5h 59m.
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 station. However, there are services departing from Bus Station Stand Z and arriving at Perth station via George Street. The journey, including transfers, takes approximately 5h 55m.
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 £75 - £180.
It takes approximately 4h 47m to get from Middlesbrough to Perth, including transfers.
Middlesbrough to Perth bus services, operated by National Express, depart from Bus Station Stand Z.
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 £75 - £180. Alternatively, you can bus via Edinburgh, which costs £21 - £80 and takes 5h 55m.
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 Z to Perth station via Edinburgh, Bus Station and George Street in around 5h 55m.
- Website
- britishairways.com
Flights from Newcastle to Edinburgh Airport via Dublin
- Ave. Duration
- 3h 55m
- When
- Every day
- Estimated price
- £40–200
Flights from Newcastle to Edinburgh Airport via London Heathrow
- Ave. Duration
- 4h 5m
- When
- Monday, Friday, Sunday, Thursday, Tuesday, and Saturday
- Estimated price
- £55–240
Flights from Newcastle to Glasgow Airport via London Heathrow
- Ave. Duration
- 4h 20m
- When
- Monday, Friday, Thursday, Tuesday, Wednesday, and Sunday
- Estimated price
- £55–240
Flights from Newcastle to Glasgow Airport via Dublin
- Ave. Duration
- 4h 5m
- When
- Every day
- Estimated price
- £40–200
Train from Darlington to Edinburgh Waverley
- Ave. Duration
- 1h 56m
- Frequency
- Hourly
- Estimated price
- £55–80
- 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)
- Phone
- +44 (0)3717 81 81 81
- Website
- National Express
Bus from Bus Station Stand Z to Edinburgh, Bus Station
- Ave. Duration
- 3h 45m
- Frequency
- Twice daily
- Estimated price
- £28–70
- Website
- National Express
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
More Questions & Answers
Middlesbrough to Perth bus services, operated by National Express, 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 559+ hotels available in Perth.








