There are 5 ways to get from Johannesburg to Zanzibar Island by plane, bus, ferry, or train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly to Abeid Amani Karume International Airport
best- Fly from Johannesburg International Airport (JNB) to Abeid Amani Karume International Airport (ZNZ)plane JNB - ZNZ
3h 49m$263–488Bus, ferry via Lusaka
cheapest- Take the bus from Johannesburg to Lusakabus
- Take the bus from Intercity Bus Terminus to Ubungo Intl Bus Terminalbus
- Take the ferry from Dar es Salaam to Zanzibarferry
2d 3h$165–265Bus, train, ferry
- Take the bus from Johannesburg to Lusakabus
- Take the bus from Lusaka to Serenjebus
- Take the train from Serenje to Dar es salaamtrain
- Take the ferry from Dar es Salaam to Zanzibarferry
2d 22hFly to Julius Nyerere International Airport, ferry
- Fly from Johannesburg International Airport (JNB) to Julius Nyerere International Airport (DAR)plane JNB - DAR
- Take the ferry from Dar es Salaam to Zanzibarferry
6h 41m$275–448Bus, ferry
- Take the bus from Johannesburg to Dar Es Salaambus
- Take the ferry from Dar es Salaam to Zanzibarferry
3d 20h$223–601
Johannesburg International Airport (JNB) to Abeid Amani Karume International Airport (ZNZ) flights
Questions & Answers
The cheapest way to get from Johannesburg to Zanzibar Island is to bus and ferry via Lusaka which costs $160 - $270 and takes 2 days 3h.
The fastest way to get from Johannesburg to Zanzibar Island is to fly which takes 3h 49m and costs $260 - $490.
The distance between Johannesburg and Zanzibar Island is 2526 km.
The best way to get from Johannesburg to Zanzibar Island without a car is to bus and ferry via Lusaka which takes 2 days 3h and costs $160 - $270.
It takes approximately 3h 49m to get from Johannesburg to Zanzibar Island, including transfers.
Zanzibar Island is 1h ahead of Johannesburg. It is currently 5:47 PM in Johannesburg and 6:47 PM in Zanzibar Island.
There are 354+ hotels available in Zanzibar Island.
What companies run services between Johannesburg, South Africa and Zanzibar Island, Tanzania?
Safair, Air Tanzania, and two other airlines fly from Johannesburg International Airport (JNB) to Abeid Amani Karume International Airport (ZNZ) 4 times a day.
- Website
- airtanzania.co.tz
Flights from Johannesburg International Airport to Abeid Amani Karume International Airport
- Ave. Duration
- 3h 30m
- When
- Tuesday and Thursday
- Estimated price
- $240–460
Flights from Johannesburg International Airport to Abeid Amani Karume International Airport via Julius Nyerere International Airport
- Ave. Duration
- 6h 15m
- When
- Monday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- $240–460
Flights from Johannesburg International Airport to Julius Nyerere International Airport
- Ave. Duration
- 3h 25m
- When
- Monday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- $180–550
Flights from Johannesburg International Airport to Julius Nyerere International Airport via Abeid Amani Karume International Airport
- Ave. Duration
- 5h 46m
- When
- Tuesday and Thursday
- Estimated price
- $180–550
- Website
- kenya-airways.com
Flights from Johannesburg International Airport to Abeid Amani Karume International Airport via Nairobi
- Ave. Duration
- 6h 52m
- When
- Every day
- Estimated price
- $280–410
Flights from Johannesburg International Airport to Julius Nyerere International Airport via Nairobi
- Ave. Duration
- 6h 55m
- When
- Every day
- Estimated price
- $210–310
- Website
- flysafair.co.za
Flights from Johannesburg International Airport to Abeid Amani Karume International Airport
- Ave. Duration
- 3h 35m
- When
- Tuesday, Saturday, and Thursday
- Estimated price
- $230–500
- Website
- flyairlink.com
Flights from Johannesburg International Airport to Abeid Amani Karume International Airport
- Ave. Duration
- 3h 35m
- When
- Wednesday and Sunday
- Estimated price
- $260–700
Flights from Johannesburg International Airport to Julius Nyerere International Airport
- Ave. Duration
- 3h 30m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- $210–600
- Website
- ethiopianairlines.com
Flights from Johannesburg International Airport to Julius Nyerere International Airport via Lusaka
- Ave. Duration
- 5h 55m
- When
- Friday and Sunday
- Estimated price
- $290–500
Flights from Johannesburg International Airport to Julius Nyerere International Airport via Blantyre
- Ave. Duration
- 6h 40m
- When
- Every day
- Estimated price
- $200–300
Flights from Johannesburg International Airport to Julius Nyerere International Airport via Lusaka
- Ave. Duration
- 5h 55m
- When
- Friday and Sunday
- Estimated price
- $290–500
- Phone
- +255 739 998 855
- Website
- tazarasite.com
Train from Serenje to Dar es salaam
- Ave. Duration
- 40h 32m
- Frequency
- Once a week
- Estimated price
- $30–34
- Schedules at
- tazarasite.com
- Mukuba M1
- $30–34
- Mukuba M2
- $34
- Phone
- +260 977 982150
- Website
- shalom-bus-services.com
Bus from Johannesburg to Lusaka
- Ave. Duration
- 20h
- Frequency
- Twice a week
- Estimated price
- $70–110
- Schedules at
- shalom-bus-services.com
Bus from Johannesburg to Lusaka
- Ave. Duration
- 20h
- Frequency
- Twice a week
- Estimated price
- $70–110
- Schedules at
- shalom-bus-services.com
- Phone
- +255 22 213 4567
- [email protected]
- Website
- srclassiccoach.co.tz
Bus from Intercity Bus Terminus to Ubungo Intl Bus Terminal
- Ave. Duration
- 28h
- Frequency
- Twice daily
- Estimated price
- $57
- Schedules at
- srclassiccoach.co.tz
- Phone
- +260 973334200
- [email protected]
- Website
- Juldan Motors
Bus from Lusaka to Serenje
- Ave. Duration
- 5h 11m
- Frequency
- Once daily
- Website
- Juldan Motors
- Phone
- +27 688 768 195
- [email protected]
- Website
- mkombelogistics.com
Bus from Johannesburg to Dar Es Salaam
- Ave. Duration
- 3d 14h
- Frequency
- Once a week
- Estimated price
- $180–250
- Schedules at
- mkombelogistics.com
- Phone
- +255 800 78 5555
- [email protected]
- Website
- azammarine.com
Ferry from Dar es Salaam to Zanzibar
- Ave. Duration
- 1h 45m
- Frequency
- 4 times a day
- Estimated price
- $35–100
- Schedules at
- azammarine.com
- Economy
- $35
- Business
- $40
- VIP
- $60
- Royal
- $100
Ferry from Dar es Salaam to Zanzibar
- Ave. Duration
- 1h 45m
- Frequency
- 4 times a day
- Estimated price
- $35–100
- Schedules at
- azammarine.com
- Economy
- $35
- Business
- $40
- VIP
- $60
- Royal
- $100
Ferry from Dar es Salaam to Zanzibar
- Ave. Duration
- 1h 45m
- Frequency
- 4 times a day
- Estimated price
- $35–100
- Schedules at
- azammarine.com
- Economy
- $35
- Business
- $40
- VIP
- $60
- Royal
- $100
- Phone
- +255 696112233
- [email protected]
- Website
- zanfastferries.co.tz
Ferry from Dar es Salaam to Zanzibar
- Ave. Duration
- 5h
- Frequency
- 5 times a day
- Estimated price
- $35–350
- Schedules at
- zanfastferries.co.tz
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Getting to Milan from the airport, Need to know: Eurostar, and Travelling by boat in Italy - to help you get the most out of your next trip.











