There are 7 ways to get from Cape Town to Johannesburg by plane, train, bus 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 to Johannesburg  •  4 h 17 min

  1. Fly from Capetown (CPT) to Johannesburg (JNB) CPT - JNB

$75 - $236

Cheapest option

Bus  •  18 h 35 min

  1. Take the bus from Cape Town to Johannesburg Greyhound

$40 - $80

5 alternative options

Fly to Lanseria  •  4 h 16 min

  1. Fly from Capetown (CPT) to Lanseria (HLA) CPT - HLA

$93 - $241

Fly to Pretoria Wonderboom Apt, train  •  4 h 56 min

  1. Fly from Capetown (CPT) to Pretoria Wonderboom Apt (PRY) CPT - PRY
  2. Take the train from Hatfield to Park

$94 - $320

Bus, train  •  20 h 45 min

  1. Take the bus from Cape Town to Pretoria
  2. Take the train from Pretoria to Park North-South

$67 - $96

Train  •  26 h 10 min

  1. Take the train from Capetown to Johannesburg

$258

Drive  •  14 h 17 min

  1. Drive from Cape Town to Johannesburg 875.2 miles

$130 - $200

What companies run services between Cape Town, South Africa and Johannesburg, South Africa?

Mango, South African Airways and four other airlines fly from Cape Town to Johannesburg every 30 minutes. Alternatively, InterCape operates a bus from Cape Town to Johannesburg 4 times a day. Tickets cost $50 - $75 and the journey takes 18 h 35 min. Three other operators also service this route.

Airlines
South African Airways
Website
flysaa.com
Flights from Capetown to Johannesburg
Ave. Duration
1 h 55 min
When
Every day
Estimated price
$70 - $400
Flights from Capetown to Lanseria
Ave. Duration
1 h 55 min
When
Every day
Estimated price
$60 - $390
Flights from Capetown to Pretoria Wonderboom Apt
Ave. Duration
2 h 15 min
When
Every day
Estimated price
$65 - $480
Comair
Website
comair.co.za
Flights from Capetown to Johannesburg
Ave. Duration
2 h
When
Every day
Estimated price
$70 - $410
Flights from Capetown to Lanseria
Ave. Duration
1 h 55 min
When
Every day
Estimated price
$75 - $410
Safair
Website
flysafair.co.za
Flights from Capetown to Johannesburg
Ave. Duration
2 h 8 min
When
Every day
Estimated price
$60 - $340
Flights from Capetown to Lanseria
Ave. Duration
2 h 5 min
When
Every day
Estimated price
$55 - $350
Mango
Website
flymango.com
Flights from Capetown to Johannesburg
Ave. Duration
1 h 55 min
When
Every day
Estimated price
$65 - $390
Flights from Capetown to Lanseria
Ave. Duration
1 h 55 min
When
Every day
Estimated price
$60 - $390
British Airways
Website
britishairways.com
Flights from Capetown to Johannesburg
Ave. Duration
2 h
When
Every day
Estimated price
$90 - $470
Singapore Airlines
Website
singaporeair.com
Flights from Capetown to Johannesburg
Ave. Duration
1 h 57 min
When
Every day
Estimated price
$100 - $470
Train operators
Gautrain
Phone
+27 80 042 8872
Website
join.gautrain.co.za
Train from Hatfield to Park
Ave. Duration
42 min
Frequency
Every 20 minutes
Estimated price
$6 - $13
Schedules at
gautrain.co.za
Train from Pretoria to Park
Ave. Duration
39 min
Frequency
Every 20 minutes
Estimated price
$6 - $12
Schedules at
gautrain.co.za
Premier Classe
Phone
086 000 8888
Email
HMlangeni@prasa.com
Website
premierclasse.co.za
Train from Capetown to Johannesburg
Ave. Duration
26 h 10 min
Frequency
Once a week
Estimated price
$258
Schedules at
premierclasse.co.za
Bus operators
InterCape
Phone
+27 (0)21 380 4400
Email
info@intercape.co.za
Website
intercape.co.za
Bus from Cape Town to Johannesburg
Ave. Duration
18 h 35 min
Frequency
4 times a day
Estimated price
$50 - $75
Schedules at
intercape.co.za
Greyhound ZA
Phone
+27 11 611 8000
Email
enquiries@greyhound.co.za
Website
greyhound.co.za
Bus from Cape Town to Johannesburg
Ave. Duration
17 h 55 min
Frequency
Twice daily
Estimated price
$40 - $60
Schedules at
greyhound.co.za
Citiliner
Phone
087 352 0352
Email
enquiries@citiliner.co.za
Website
citiliner.co.za
Bus from Cape Town to Johannesburg
Ave. Duration
18 h 30 min
Frequency
Twice daily
Estimated price
$55 - $80
Schedules at
citiliner.co.za
Bus from Cape Town to Pretoria
Ave. Duration
19 h 55 min
Frequency
Twice daily
Estimated price
$60 - $85
Schedules at
citiliner.co.za
TransLux Express
Phone
011 774 8304
Email
translux@apx.co.za
Website
translux.co.za
Bus from Cape Town to Johannesburg
Ave. Duration
17 h 55 min
Frequency
Once daily
Estimated price
$42
Book at
res.prasa.com

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 Getting around the Cyclades, How to get from JFK to New York City and Travelling Croatia’s Dalmatian Coast by boat, bus, car and train - to help you get the most out of your next trip.

Questions & Answers

How far is it from Cape Town to Johannesburg?

The distance between Cape Town and Johannesburg is 1262 km. The road distance is 1400 km.

What is the cheapest way to get from Cape Town to Johannesburg?

The cheapest way to get from Cape Town to Johannesburg is to bus which costs R 500 - R 1 000 and takes 18 h 35 min.

What is the fastest way to get from Cape Town to Johannesburg?

The quickest way to get from Cape Town to Johannesburg is to fly which takes 4 h 16 min and costs R 1 100 - R 3 000.

Is there a direct train between Cape Town and Johannesburg?

Yes, there is a direct train departing from Capetown and arriving at Johannesburg. Services depart once a week, and operate Thursday. The journey takes approximately 26 h 10 min.

Is there a direct bus between Cape Town and Johannesburg?

Yes, there is a direct bus departing from Cape Town and arriving at Johannesburg. Services depart every three hours, and operate every day. The journey takes approximately 18 h 35 min.

How long does it take to get from Cape Town to Johannesburg?

It takes approximately 4 h 17 min to get from Cape Town to Johannesburg, including transfers.