Xai-Xai is 220 km north of Maputo on the EN1, the main national highway that runs the length of Mozambique. The drive from Maputo takes around 2.5 to 3 hours in a private car, longer by bus.
By bus: Chapa (minibus) and coach services run between Maputo and Xai-Xai regularly throughout the day. The journey takes 3–4 hours depending on stops and traffic at the Limpopo bridge. Buses depart from Maputo's Junta bus terminal; ask at the terminal for the next departure. Several coach companies also run the route with more comfortable vehicles.
By car: The EN1 from Maputo to Xai-Xai is sealed and in reasonable condition. The turn-off to Praia de Xai-Xai is well-signed, 10 km before the town. Self-driving visitors from South Africa should note that the border crossing at Ressano Garcia (Komatipoort) is the most convenient, then the N4/EN1 runs north through Maputo.
From the border: Xai-Xai is a logical first overnight stop for travellers entering Mozambique from South Africa. It's about 3 hours from the Ressano Garcia/Komatipoort border crossing.