Modric, 33, helped Real Madrid win a third successive Champions League title in May and also captained Croatia to their first World Cup final, being named player of the tournament despite his side losing 4-2 to France.
"It's a unique feeling. I'm happy proud and honoured, I have a lot of emotions right now, it's hard to describe in words," said Modric, wearing a tuxedo as he collected the award from presenter and former France forward David Ginola after a glamorous ceremony at the Grand Palais in Paris.
The last player to lift the award apart from the Argentine and Portuguese, who have won it a joint-record five times each, was Kaka in 2007 when the Brazilian played for AC Milan.
Paris St Germain's France forward Kylian Mbappe, who also collected the Kopa award for the best under-21 player, came fourth, with Barca forward Messi finishing fifth.
Olympique Lyonnais' Norway forward Ada Hegerberg won the inaugural Ballon d'Or for women's football, having led her side to the Women's Champions League title, scoring in extra time in the 4-1 win over Vfl Wolfsburg in the final.
The Ballon d’Or was first awarded in 1956 and was partnered with soccer's world governing body FIFA under the title 'The Best' from 2010 to 2015, until becoming its own entity again.