The experience of a trip to the island of Mafia is worth it, the first test being to get there! Of course, you can go by plane from Dar Es Salaam. But in my opinion, it's much more rewarding and fun, although more tiring, to get to the island by road and on a boat. You will have to face waiting long hours before embarking on the boat, which, once leaving the port, will wait its turn until the high tide allows it to cross the sand banks. Twelve hours by boat for only 50 kilometres, but it's an opportunity to enjoy a fantastic starlit night, being lulled by the gentle waves of the Indian Ocean.
Two companies offer these journeys. I would advise taking the smallest boat for the outward journey, and, for those who aren't afraid of an overwhelming smell of fish, taking the other boat (more rustic) for the return journey: a real adventure!
Once you have arrived, go and find fishermen on the Kilindoni beach, take a motorbike taxi to get to the East coast, which is admittedly more touristic, but with has magnificent beaches and snorkelling excursions to swim in coral gardens amongst the multiple species of fish which populate these waters. Should you feel so inclined, you can also go to the beacon where you'll find the northern tip of the Island, and you'll feel at the end of the world; but beware of monkeys...
You'll need a bit of time to travel to Mafia, but I didn't regret the detour!