In 2008, the military officer had been in medal contention before his hopes were dashed during the riding event when his horse fell on him after crashing into a fence, ultimately finishing the competition in a disappointing 28th place.
"It was a very sad moment for me and I promised immediately after the competition that I will try to fight for a gold medal again here in London," said the 27-year-old, whose win was the Czech Republic's first gold in modern pentathlon.
"So I am really very happy, it is my dream come true."
The men's modern pentathlon, celebrating its Olympic centenary in London, sees 36 athletes battling it out in a round-robin fencing competition before heading to the pool for a 200 metres swim.
Then comes show jumping, before a final combined shoot and run event where the competitors take five shots at a target before running 1,000m, repeating the procedure three times.
Svoboda, who stormed to an early lead after equalling the Olympic fencing points record, had slipped into second behind Cao after struggling to a 17th place finish in the swimming.
But the Czech edged back to the top of the leaderboard after managing a cleaner result in the riding, where competitors are given just 20 minutes to familiarise themselves with a randomly assigned horse, toppling just three rails to Cao's six.
With Svoboda having only a 1 second advantage going into the finale, where starts are staggered according to points earned in the first three events, the pair were soon literally face to face in the shooting range.
"I am left handed so I saw him and I saw his mistakes and my mistakes," said Svoboda, who wrote his university thesis on the history of modern pentathlon.
"It is mentally very hard and I was trying to be cool, calm down my mind ... I was just focused on my shooting."
Despite Cao setting off for the final lap around Greenwich Park first, Svoboda proved the stronger runner, raising his arms in celebration as he crossed the finish line 6 seconds ahead of his Chinese rival to set an Olympic record of 5,928 points.
Egypt's Amro El Geziry, a doctor by profession, also notched up a modern pentathlon Olympic record in the swimming leg, but a disappointing performance in the riding saw him drop from fifth to 28th ahead of the final event, where he crossed the finish line in 33rd place.
With Hungary's Adam Marosi taking the bronze, the top trio denied the usually dominant Russians a spot on the podium.
The favourites going into the competition, Russian world number one Aleksander Lesun and world number two Andrei Moiseev came in fourth and seventh respectively.
"I lost many important points on fencing this morning, but nevertheless when I came to the combined event I thought silver or bronze was realistic," said Moiseev, who had been seeking his third successive Olympic gold and went into the final event in sixth place, 16 seconds behind Svoboda. "I'm really disappointed."
- Related links