World record holder Eliud Kipchoge was beaten in the London Marathon as Shura Kitata won a thrilling sprint finish to claim an unexpected victory.
Four-time winner Kipchoge was the favourite, but fell behind with two laps to go and finished eighth.
Ethiopian Kitata pushed ahead of Kenya’s Vincent Kipchumba on the home straight to finish in two hours five minutes and 41 seconds.
Brigid Kosgei, who holds the women’s world record, defended her title.
Both races were run in cold and wet conditions on a specially designed closed-loop course because of coronavirus restrictions.
The women’s race started at 07:15 BST with the men’s following three hours later and the wheelchair races, with male and female athletes competing at the same time, coming after.
Great Britain’s David Weir was denied a ninth London Marathon as Canada’s Brent Lakatos emerged victorious in the men’s race, while Manuela Shar suffered a shock defeat to Nikita den Boer in the women’s.
‘Disappointed’ Kipchoge falls behind
Kipchoge, who last lost a marathon in 2013, said: “I am really disappointed. I don’t know what happened.
“The last 15km, I felt my right ear was blocked. I had cramp in my hip and leg.
“It just happened in the race. I started well. It’s really cold but I don’t blame the conditions.”
It was supposed to be a straightforward victory for defending champion Kipchoge, with Kenenisa Bekele pulling out injured on Friday.
But the 35-year-old Kenyan, who set a world record of 2:01.39 in 2018, never took the opportunity to pull away from an eight-strong leading pack in a slow start.
Kitata pushed the pace with 15 minutes to go and Kipchoge looked increasingly uncomfortable as he fell back.
Others dropped off too and eventually Kitata rounded the final corner into the home straight with compatriot Sisay Lemma and Kipchumba.
The 24-year-old managed to surge ahead and finish one second before Kipchumba, with Lemma three seconds further back.
“I prepared very well for this race,” Kitata said. “Kenenisa Bekele helped me. I am very happy to win the race.”
Britain’s Mo Farah, a four-time Olympic champion on the track who was working as a pacemaker, said he was surprised by the result.
“It was a shock for all of us. We had expected him to win by miles, considering what times he has run,” Farah told the BBC.
“But it was a good field. It’s part of racing, it’s part of sport, it happens.”
Kosgei claims dominant win
Kosgei, 26, went clear of world champion Ruth Chepngetich after mile 18 and finished in 2:18.58, three minutes and three seconds ahead of American Sara Hall.
She was almost five minutes outside her world record set in Chicago last year.
“The weather was not good, so we struggled,” Kosgei, who earned $30,000 (£23,200) in prize money with her win, told BBC Sport. “I struggled up to the moment I finished.
“We have not prepared well due to the pandemic. I will be prepared for good results next year.”
The London Marathon, rescheduled from its traditional April date because of the coronavirus pandemic, took place for elite runners only over 19 laps around St James’s Park.
The usual mass participation event happened virtually because of covid-19 restrictions, while there were no spectators cheering on the elite runners.
Farah sets pace for Britons
Given a stellar lead-out by Farah, marathon debutant Ben Connor slowed on the home straight, but managed to cross the line 10 seconds inside the Olympic qualifying time.
Jonny Mellor, who had achieved the marker before, claimed the British title as he finished in 2:10.38.
In the women’s race, Steph Twell, who reached world finals and won a European medal on the track, missed out on the Olympic qualifying time of 2:29:30.
The 31-year-old limped out around mile 16 as she failed to repeat her rapid time from Frankfurt last year. Lily Partridge, the 2018 British champion, also could not finish, suffering from cramp and later saying on social media that she had never been so cold out running.
In their absence, Natasha Cockram and Naomi Mitchell fought for the domestic title, with Cockram finishing four seconds ahead of her rival in 2:33:19.
Meanwhile, around the world
While the elite competed in London, 45,000 people aged from 18-87 are covering the 26.2 miles around the country and around the world.
Runners had 24 hours to complete the distance on a course of their choosing, logging their progress on the event app and raising thousands for pounds for charity.
The oldest participant was 87-year-old Ken Jones, who has run every London Marathon since the inaugural race in 1981. Jones will be running 26.2 miles near his home in Strabane, Northern Ireland with his daughter, Heather.
BBC Sport and Public Health England’s Couch to 5K challenge aims to have you confidently running 5km in nine weeks – even if you have never run before. Find out more here.