It takes around 11 hours 30 minutes to fly directly from London to Johannesburg or Cape Town.