By Air
Sir Seretse Khama International Airport sits on the eastern edge of Gaborone. Air Botswana connects the capital to Johannesburg and a handful of domestic destinations. South African Airways and other regional carriers also serve the route. Most international connections go through Johannesburg (OR Tambo International Airport), which is about four hours by road or a short flight away.
By Bus and Minibus
Cross-border coaches connect Gaborone to Johannesburg regularly; the journey takes four to five hours. Intercape and other long-distance operators run comfortable services. Within Botswana, shared minibuses (combis) depart from the main bus rank near the centre and serve major towns including Francistown and Maun, though journey times are long and departures informal.
By Train
A rail service connects Gaborone to Francistown and the South African border at Ramatlabama, though the train is slow and infrequent — most travellers prefer the bus.
By Road from South Africa
The main border crossing is at Tlokweng Gate east of the city, open 24 hours. The drive from Johannesburg is straightforward on good roads.