South Africa Travel Guide |
Home South Africa Airfare Tours in South Africa Accomodation What to do in South Africa Travel Guide

Getting Between Cape Town and Johannesburg

Getting Around South Africa

Getting between the two main South African cities of Johannesburg and Cape Town is easy, and your only difficulty will probably be in deciding how to do it. The distance as the crow flies between the two cities is 1254 km, or 779 miles.

Obviously the quickest and easiest way to cover the distance is by air. Johannesburg (Oliver Tambo) International Airport and Cape Town international Airport are the two main international ports of entry into South Africa, and as a consequence they are the country’s principal airports.


All the leading internal air carriers in South Africa operate regular, non-stop scheduled flights between Cape Town and Johannesburg. This is obviously one of the main internal routes. These are:

  • 1Time
  • British Airways operating as Comair
  • Interlink Airlines
  • Mango
  • South African Airways
  • Prices vary, but in a recent survey it was established that the cheapest option available was offered by British Airways, although in truth there is not much to choose between them. Economy prices vary at between US$80 to US$150, sometimes more, but rarely less, depending on the season and the airline, so it is definitely worth checking out the options before you book.

    Inter-city Coaches

    Currently the best deals are available here, and with all the main coach operators plying this route, connections are frequent and reliable. The main inter-city operators working this route are:

  • TransLux
  • InterCape
  • Greyhound
  • City to City (no frills coach booked thru TransLux)
  • SA Roadlink (super luxury coaches)
  • The bus ride either way between Cape Town and Johannesburg is long and direct with limited rest stops along the way. The routes are usually overnight, and can take upwards of 20 hours. It therefore makes a lot of sense to pay a few dollars more for a sleepliner which offers a little more comfort than the mainliner class – although both are pretty comfortable.

    Prices vary between about US$50 and US$80 one way. Deals are available so shop around. The main bus terminus is at Ghandi Square in downtown Johannesburg. Intercity busses arrive and leave from the bus terminus at Cape Town train station.

    BAZ Bus

    Baz Bus does the route, but thanks to its nature as a jump-off-jump-on tour bus option, it is not the best deal on the road, with the price floating above US$100 for this trip. The buses are not ideally configured for long journeys, and being a stop/start type of trip it can take a long time. Best considered if you are not in a hurry.


    The cheapest option for the Cape Town/Johannesburg Route is the Shosholoza Meyl intercity with consistently reasonable prices hovering at below US$50 for a one way ride. This is hard to beat. Premier Class is significantly more – about US$150 for the same journey – so there is a lot to be said for checking out Shosholoza Meyl

    Shosholoza FAQ

  • Bookings can be made 90-days in advance
  • Fares in fact vary by month
  • Travel is in a sleeper berth with a 2, 3, 4 or 6 berth capacity
  • Couples can request berths in a 2-berth compartment
  • Bedding (sheets, blankets, pillow, made up for you by the train attendant) is an extra US$5 or so per person. This is paid on the train
  • Children up to 9 (inclusive) travel at half fare
  • Returns are twice the one-way fare. There may be further reductions for students & seniors in off-peak periods, so ask when booking
  • Cars can be transported
  • Pets are not allowed on board, except guide dogs
  • Driving

    Car hire remains the optimum way to travel in South Africa, and the road between Cape Town/Johannesburg wends through some of the loveliest countryside in the regions. You can stick to the main road or slip off in many directions en route, exploring the countless small towns, villages and byways of the Orange Freestate, the Northern Cape Province and the Cape itself. This is hard to beat.