British Airways and Fiji Airways offer nonstop flights from London to Nadi, and the flight takes around 22 hours.