The 34-year-old finished the gruelling 2.4-mile swim, 112-mile bike ride and 26.2-mile run in nine hours, 15 minutes and 54 seconds.
She was just over a minute clear of Switzerland's Caroline Steffen.
It was Cave's second world title of the year after victory in the Half Ironman World Championship last month.
"I'm kind of speechless," said Cave, who finished third behind fellow Briton Chrissie Wellington and Australian Mirinda Carfrae in 2011.
"I just hope they don't come out with another distance. I'm getting too old for this."
Britain's Rachel Joyce finished 11th in 9:40:16, while double Olympic medallist Rebecca Romero, who took up Ironman after retiring from cycling, came home in 11:39:08.
Cave was always in contention at the front of the field, exiting the swim in fourth and the bike in third, then pulling clear of Australian rival Carfrae on the run before overhauling Steffen.
Australia's Pete Jacobs won the men's event, beating Germany's Andreas Raelert by more than four minutes.
Britain's Leanda Cave pulled away in the last three miles of the run to win the Ironman World Championship in Hawaii.