The Portuguese was a hot favorite to retain the prize after another successful 12 months saw him add La Liga and FIFA Club World Cup medals to a third Champions League triumph in four years, the latter secured in large part to his 12-goal haul during the competition.
"Thank you very much. It's great to be around these amazing players. I am so happy," said a beaming Ronaldo, after collecting the award from Diego Maradona and Brazil's Ronaldo in London.
Messi looked on as his rival collected a rebranded version of the award he last won in 2015. One of the two has won its equivalent every year for the past decade; Kaka's triumph in 2007 was the last time football fans were treated to a different winner.
The fact that Messi missed out, despite scoring 37 times during Barcelona's ill-fated 2016/17 title challenge and collecting a Copa Del Rey medal, is testament to the level they've pushed one another to in recent years.
Zidane collects coaching award
Real Madrid's Zinedine Zidane was named best men's coach for 2017, becoming the first man to lead his team to a successful defense of the European Cup in the Champions League era.
The former France star finished ahead of Chelsea's Antonio Conte and Juventus coach Massimiliano Allegri in the judges' decision.
Lieke Martens was crowned the best female player for 2017, ahead of USA's Carli Lloyd and Venezuela's Deyna Castellanos. Martens enjoyed a remarkable season for the Netherlands and FC Rosengard, lifting the Women's EURO 2017 title in August.
"I couldn't have achieved this without my family," said Martens. "Dad and Mum, this is for you."
The best female coach award went to Sarina Wiegman, who masterminded the Netherlands' Women's Euro 2017 triumph on home soil.
Gianluigi Buffon claimed top prize in the goalkeeper category, ahead of FC Bayern's Manuel Neuer and Real Madrid's Keylor Navas.
Neuer has been at his imperious best when fit over the past 12 months, though recurring injury problems ultimately dented the recently-appointed Germany captain's chances of winning.
Buffon sealed the top spot thanks to a year which saw the 39-year-old win Serie A and reach the Champions League final with Juventus, going 660 minutes without conceding a goal in the competition before losing to Ronaldo's Madrid in the final.
Best of the rest
The Puskas Award, given for the year's best goal, was awarded to Olivier Giroud for his stunning "scorpion kick" volley for Arsenal in the Premier League.
The fan award, which was collected by Borussia Dortmund and Liverpool in last year’s ceremony — thanks to their spine-tingling joint rendition of 'You'll Never Walk Alone' — was won by Celtic for the celebrations which accompanied the 50th anniversary of their historic European Cup triumph.