Travel from Johannesburg to Francistown

Bus or fly from Johannesburg to Francistown?

Air Botswana flies from Johannesburg to Francistown 6 times a week. Alternatively, you can take a bus from Johannesburg to Francistown via Gaborone in around 10 hours 25 minutes.

How to get from Johannesburg to Francistown

ModeDurationPrice
From Park train to Marlboro, train to Johannesburg airport, fly to Francistown airport, then drive to Francistown.4 h 13 min$300
From Johannesburg bus to Gaborone, drive to Gaborone airport, fly to Francistown airport, then drive to Francistown.7 h 3 min$225
From Johannesburg bus to Gaborone then bus to Francistown.10 h 25 min$26
From Johannesburg bus to Gaborone then train to Francistown.12 h 25 min$25
From Johannesburg bus to Bulawayo, walk to Bulawayo, then train to Francistown.20 h 45 min
From Johannesburg drive to Francistown.9 h 3 min$85

How long does it take to get from Johannesburg to Francistown?

It takes approximately 4 hours 13 minutes to get from Johannesburg to Francistown, including transfers.

Is there a direct bus between Johannesburg and Francistown?

No, there is no direct bus from Johannesburg to Francistown. However, there are services departing from Johannesburg and arriving at Francistown via Gaborone. The journey, including transfers, takes approximately 10 hours 25 minutes.

Operators from Johannesburg to Francistown

OperatorPhoneWebsite
Gautrain+27 80 042 8872Gautrain
Air BotswanaAir Botswana
AT and T MonnakgotlaAT and T Monnakgotla
Seabelo Group+267 395 7078Seabelo Group
Botswana Railways+267 4711375Botswana Railways
InterCape+27 (0)21 380 4400InterCape
NRZNRZ