There are several ways to arrive in Gaborone. First of all is via road. Gaborone can be reached by paved roads from Francistown, Lobatse or Johannesburg (about 400 km, depending on a route). The entrances to Botsawana are at Mmabatho/Ramatlhabama which is open daily from 7 am to 8  pm, Zeerust/Lobatse Pioneer Gate open from 7am to 7pm or Tlokweng border post from 7 am to 22pm.

Also, Gaborone is reachable by air from Johannesburg several times a day. The national airline is Air Botswana (BP) which only operates within Africa. British Airways (BA) flies direct to Gaborone twice-weekly from London. Upon arrival, one can take a taxi from Sir Seretse Khama international airport which is 14 km from the city center. The taxi trip should take about 15 minutes. There are no regular bus services to and from the airport but several hotels run minibuses (combis). Also, Air Botswana operates scheduled domestic daily flights to Kasane, Maun and Francistown.

There are good railway connections between South Africa, Zimbabwe and Botswana as well, either via the Johannesburg–Mafikeng– Ramatlhabama–Gaborone line or the Gaborone–Plumtree–Bulawayo–Harare. Passengers are advised to take their own food and drink as the buffet has a limited range