There are 8 ways to get from Mpumalanga to Johannesburg by plane, train, taxi, bus, car train or car

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Fly Pietermaritzburg to Johannesburg, train  •  2 h 25 min

  1. Fly from Pietermaritzburg (PZB) to Johannesburg (JNB) PZB - JNB
  2. Take the train from Marlboro to Park

$135 - $322

Cheapest option

Bus TransLux Express  •  7 h 51 min

  1. Take the bus from Pinetown to Johannesburg

$49 - $61

6 alternative options

Taxi to Durban, fly to Johannesburg  •  2 h 50 min

  1. Take a taxi from Mpumalanga to Durban
  2. Fly from Durban (DUR) to Johannesburg (JNB) DUR - JNB

$128 - $268

Taxi to Durban, fly to Lanseria  •  2 h 49 min

  1. Take a taxi from Mpumalanga to Durban
  2. Fly from Durban (DUR) to Lanseria (HLA) DUR - HLA

$145 - $250

Bus Eldo Coaches  •  6 h 51 min

  1. Take the bus from Pietermaritzburg to Johannesburg

$52 - $81

Bus Greyhound ZA  •  8 h 33 min

  1. Take the bus from Pinetown to Johannesburg

$57 - $76

Car train  •  12 h 16 min

  1. Take the car train from Pietermaritzburg to Johannesburg

$53 - $76

Drive  •  5 h 46 min

  1. Drive from Mpumalanga to Johannesburg 331.2 miles

$50 - $75

Questions & Answers

The cheapest way to get from Mpumalanga to Johannesburg is to bus which costs R 650 - R 800 and takes 7 h 51 min.

More details

The quickest way to get from Mpumalanga to Johannesburg is to fly and train which costs R 1 700 - R 4 300 and takes 2 h 25 min.

More details

The distance between Mpumalanga and Johannesburg is 475 km. The road distance is 529.9 km.

Get driving directions

It takes approximately 2 h 25 min to get from Mpumalanga to Johannesburg, including transfers.

More details

What companies run services between Mpumalanga, South Africa and Johannesburg, South Africa?

Eldo Coaches operates a bus from Mpumalanga to Johannesburg every 4 hours. Tickets cost $14 and the journey takes 6 h 19 min. Two other operators also service this route.

Airlines
South African Airways
Website
flysaa.com
Flights from Pietermaritzburg to Johannesburg
Ave. Duration
1 h 1 min
When
Every day
Estimated price
$80 - $360
Flights from Durban to Johannesburg
Ave. Duration
1 h 5 min
When
Every day
Estimated price
$45 - $330
Flights from Durban to Johannesburg via Nelspruit
Ave. Duration
2 h 55 min
When
Every day
Estimated price
$55 - $400
Flights from Durban to Lanseria
Ave. Duration
1 h 5 min
When
Every day
Estimated price
$40 - $150
Comair
Website
comair.co.za
Flights from Durban to Johannesburg
Ave. Duration
1 h 5 min
When
Every day
Estimated price
$45 - $330
Flights from Durban to Lanseria
Ave. Duration
1 h 5 min
When
Every day
Estimated price
$45 - $210
Mango
Website
flymango.com
Flights from Durban to Johannesburg
Ave. Duration
1 h 5 min
When
Every day
Estimated price
$40 - $280
Flights from Durban to Lanseria
Ave. Duration
1 h 5 min
When
Every day
Estimated price
$40 - $150
Safair
Website
flysafair.co.za
Flights from Durban to Johannesburg
Ave. Duration
1 h 14 min
When
Every day
Estimated price
$35 - $300
British Airways
Website
britishairways.com
Flights from Durban to Johannesburg
Ave. Duration
1 h 5 min
When
Every day
Estimated price
$40 - $300
Qatar Airways
Website
qatarairways.com
Flights from Durban to Johannesburg
Ave. Duration
1 h 5 min
When
Every day
Estimated price
$50 - $320
Turkish Airlines
Website
p.turkishairlines.com
Flights from Durban to Johannesburg
Ave. Duration
1 h 15 min
When
Monday, Tuesday, Thursday and Saturday
Estimated price
$110 - $420
Train operators
Gautrain
Phone
+27 80 042 8872
Website
join.gautrain.co.za
Train from Marlboro to Park
Ave. Duration
12 min
Frequency
Every 20 minutes
Estimated price
$9
Schedules at
gautrain.co.za
Shosholoza Meyl
Phone
086 000 8888
Website
shosholozameyl.co.za
Car train from Pietermaritzburg to Johannesburg
Ave. Duration
11 h 42 min
Frequency
3 times a week
Estimated price
$12 - $28
Schedules at
shosholozameyl.co.za
2nd Class
$12 - $18
1st Class
$21 - $28
Bus operators
Eldo Coaches
Phone
086 113 5367
Email
info@eldocoaches.co.za
Website
eldocoaches.co.za
Bus from Pietermaritzburg to Johannesburg
Ave. Duration
6 h 19 min
Frequency
Every 4 hours
Estimated price
$14
Schedules at
eldocoaches.co.za
Book at
cbsc.co.za
Greyhound ZA
Phone
+27 11 611 8000
Email
enquiries@greyhound.co.za
Website
greyhound.co.za
Bus from Pietermaritzburg to Johannesburg
Ave. Duration
6 h
Frequency
Twice daily
Estimated price
$22 - $30
Schedules at
greyhound.co.za
Bus from Pinetown to Johannesburg
Ave. Duration
8 h 5 min
Frequency
Once daily
Estimated price
$23 - $35
Schedules at
greyhound.co.za
Citiliner
Phone
087 352 0352
Email
enquiries@citiliner.co.za
Website
citiliner.co.za
Bus from Pietermaritzburg to Johannesburg
Ave. Duration
6 h
Frequency
6 times a week
Estimated price
$23 - $35
Schedules at
citiliner.co.za
TransLux Express
Phone
011 774 8304
Email
translux@apx.co.za
Website
translux.co.za
Bus from Pinetown to Johannesburg
Ave. Duration
7 h 25 min
Frequency
Twice daily
Estimated price
$19 - $25
Schedules at
res.prasa.com
Price
$19 - $25
Other operators
Taxi from Mpumalanga to Durban
Ave. Duration
53 min
Estimated price
$75 - $90

Want to know more about travelling around the world?

Rome2rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Travelling to and around Russia for the 2018 FIFA World Cup, What are the different types of Renfe trains in Spain? and Is ride-sharing platform BlaBlaCar right for you? - to help you get the most out of your next trip.