Gebrselassie mixed with amateur runners in Berlin before the race
Haile Gebrselassie broke his own world record as he won the Berlin Marathon for the third time in a row.
The 35-year-old Ethiopian became the first man to run under two hours, four minutes as he clocked 2:03:59.
His time was nearly half a minute quicker than his previous record, set over the same course last year.
"I am so, so happy, everything was perfect, the weather was perfect, the spectators were perfect, everything - I am so happy," said Gebrselassie.
"Since I started running, Berlin is my lucky city."
James Kwambai went with the Ethiopian when he broke away just after the 33km mark but Gebrselassie stepped up the pace 6km out and the Kenyan wilted.
Gebrselassie, the first man to win the event three times, picked up £39,000 for the victory and the same amount for his world record.
His achievement was all the more impressive given that his training had been interrupted by a calf injury.
"Two weeks ago I had a bit of a problem with my calf muscle, but I took a week off," he said. "It gave me a few worries coming here, but I forgot about it as the race wore on.
"I knew before I came here I could do something special."
It is the sixth time the world record has been broken over the flat Berlin course.
Irina Mikitenko, who won the London Marathon earlier this year, won the women's race in a time of 2hrs 19mins 18secs.It was a personal best for the German and the fastest time in the world this year.