The Kenyan, who broke the world record at the Berlin marathon in September, raised his arms skyward and grinned as he won the men’s race.
Mo Farah, who was the bookies’ favourite to win the race, said afterwards: “I will be back.”
He added: “I’m not going to finish it like this. I gave it my all but I’m disappointed I didn’t go out there and give what the crowd deserve.
“It was pretty tough. I’m disappointed but you try things and sometimes it doesn’t work, but you have to give it a go. You learn – life goes on.”
You learn – life goes on. Mo Farah
In the women’s race, two-time world champion Edna Kiplagat won the marathon for the first time in a sprint finish in front of Buckingham Palace.
After twice finishing second in the race in previous years, the 34-year-old Kenyan went one better by completing the 26.2-mile route in 2 hours, 20 minutes, 21 seconds — 3 seconds ahead of compatriot Florence Kiplagat.
In the men’s wheelchair race, Marcel Hug pipped the UK’s David Weir to victory.
In the women’s wheelchair race, Tatyana McFadden swapped the slopes for the streets as she successfully defended her London title with a dominant performance, winning in a course record time of 1 hour, 45 minutes, 11 seconds.