Paris St Germain forward beat Bayern Munich striker Robert Lewandowski and Chelsea midfielder Jorginho.
Spanish midfielder Alexia Putellas won the Women’s Ballon d’Or after winning a treble in the League, Cup and Champions League with Barcelona.
27-year-old Barca teammate Jennifer Hermoso finished second, Chelsea striker Sam Kerr third and Arsenal striker Vivianne Miedema fourth.
Argentina international Messi won a first Copa America title with his country during the year and was La Liga’s top scorer for the 2020-21 season with 30 goals as Barcelona finished third.
The 34-year-old also helped Barca win the Copa del Rey before joining PSG this summer.
He had won the honor for a record-breaking sixth time in 2019 – one ahead of Cristiano Ronaldo – before the awards were canceled in 2020 due to the coronavirus pandemic.
“It’s amazing to be here again,” Messi said.
“I don’t know how much I have left, but I hope it’s a lot, because I like it. Other times I won this award and always felt like something was missing.
“I felt emptied of something, and this year I was able to fulfill the dream I wanted so much after fighting and suffering many falls.
“This award is largely down to what we (Argentina) did in Copa America. “
Earlier, Manchester United striker Ronaldo – who came fifth – dismissed claims by French journalist Pascal Ferre that his main goal is to end his career with more Ballon d’Or wins than Messi.
Ronaldo did not attend Monday’s event at the Théâtre du Châtelet in the French capital but responded on social media.
“Pascal Ferre lied, he used my name to promote himself and to promote the publication for which he works”, posted the Portuguese international Ronaldo on Instagram.
“It is unacceptable that the person responsible for the attribution of such a prestigious award could lie in this way, in an absolute disrespect for someone who has always respected France Football and the Ballon d’Or. ”