Prince Harry makes surprise visit to London Marathon despite Meghan 'due today'

Prince Harry (centre) taking a photo with Eliud Kipchoge (L) and Brigid Koskei. [Photo: Mirror]

Prince Harry was all smiles as he made a surprise visit to the London Marathon on the day reported to be his wife Meghan Markle's due date.

The birth of the Duke and Duchess of Sussex's first child is expected within days, but that didn't stop Harry from showing up at the UK's biggest race on Sunday in what could be his final public appearance before he becomes a father.

Appearing happy and relaxed, Harry, dressed in a suit and white shirt with an unbuttoned collar, smiled as he shook hands and posed for photos with volunteers and winners including men's race champion Eliud Kipchoge.

Harry and world record holder Eliud Kipchoge, who won the men's race. [Photo: Mirror]

It is understood Harry had always planned to go but with the birth of his child due around this period it was not announced in advance.

The duke's presence suggests wife Meghan, who is at their new Frogmore Cottage home on the Windsor Castle estate, is not expected to give birth this afternoon.

"We know the baby is due, in fact I can tell you that the due date is pretty much today," he said on Friday.

"Today, tomorrow, we really are in the realms of imminent arrival."

Harry, meanwhile, was facing criticism on Sunday over an Earth Day post on the official 'Sussex Royal' Instagram account, which has more than five million fans.

He shared striking snaps of wildlife and preached about safeguarding the planet.

But it emerged the animals - an elephant, rhino and lion - had been tranquilised before the snaps were taken.

Harry was accused of cropping his photo of the elephant so that royal fans could not see a rope around one of its hind legs.

A spokeswoman for Harry denied claims that the image was cropped deliberately so that the rope was not shown.

More than 40,000 athletes took part in the London Marathon, with tennis champion Andy Murray starting the proceedings.

Kenyan runner Eliud Kipchoge, who won the Olympic marathon in 2016 and the current marathon world record holder, won the men's race for a record fourth time.

Kipchoge, 34, smashed his own course record when he crossed the finish line near Buckingham Palace in a time of two hours, two minutes and 37 seconds.

Sir Mo Farah finished fifth in a time of two hours, five minutes and 39 seconds.

Brigid Kosgei, of Kenya, won the women's race with a time of two hours, two minutes and 37 seconds.

The 25-year-old was runner-up at last year's marathon.

American Dan Romanchuk won the men's wheelchair race (one hour, 33 minutes and 38 seconds), while the women's event was won by Manuela Schar of Switzerland (one hour, 44 minutes and nine seconds).