Ronaldo is now one Ballon d'Or behind Messi, who was second this time with French striker Antoine Griezmann third.
Never one to play down his achievements, Ronaldo was spotted midweek in training having dyed his hair gold in anticipation and several media outlets published a photo earlier on Monday appearing to confirm he was the winner, before organisers France Football magazine made the official announcement.
"For me it's a great honour to receive my fourth Ballon d'Or. The emotion is like the first one -- it's a dream come true again," Ronaldo, who is at the Club World Cup in Japan, told L'Equipe TV.
"I never thought in my mind to win four times the Ballon d'Or, I'm so pleased and so happy.
"I have to thank all my team-mates, the national team, Real Madrid, all the people, the players who helped me to win this individual trophy.
"I want to enjoy this moment because it's not easy to win this."
Fourth was Luis Suarez and fifth his fellow Barcelona attacker Neymar, with Ronaldo's Welsh team-mate Gareth Bale sixth.
'Sensational year'Â
Ronaldo was the firm favourite to win, but the prestigious prize comes at a time when the prolific forward has generated negative headlines in the past week over accusations of tax evasion.
Denying any wrongdoing, he responded by publishing his financial records last week, showing last year he earned a whopping 227 million euros ($240 million).
"You believe I am worried? He who owes nothing, fears nothing," Ronaldo told broadcaster RTP at the time.
Ronaldo, the highest-paid sportsman in the world, first won the Ballon d'Or in 2008 after Premier League and Champions League triumphs with Manchester United.
But it was only in 2013 that he added his second -- Messi had hogged it before then -- and Ronaldo made it a hat-trick the following year.
United were quick to offer their congratulations on Twitter, calling a fourth Ballon d'Or "incredible".
Real said Ronaldo, who last month signed a bumper new five-year contract, had enjoyed "a sensational year".
The first Ballon d'Or was won by Stanley Matthews, at the time with Blackpool, who beat Alfredo Di Stefano for the inaugural title in 1956.
The Ballon d'Or is decided by a vote of 173 journalists.
-AFPÂ