The World Expo is held every five years in a different city chosen by the Bureau of International Expositions and sees hundreds of countries show off the latest in architecture and technology for up to six months.
The ruler of Dubai, Sheikh Mohammed Bin Rashid al-Maktoum, has promised to astonish the world with the event.
The Gulf city beat Russia's Yekaterinburg in the final round of voting in Paris. The other contenders were Sao Paulo in Brazil and Izmir in Turkey.
"We renew our promise to astonish the world in 2020," said Sheikh al-Maktoum after the win.
"Dubai Expo 2020 will breathe new life into the ancient role of the Middle East as a melting pot for cultures and creativity."
Dubai authorities say the Expo 2020 will bring in around $23bn (£14bn, €17bn). They say financing for the six-month event will cost a total of $8.4bn (£5.2bn, €6.2bn), with the government spending around $6.5bn (£4bn, €4.8bn) on infrastructure projects.
A huge exhibition centre will be built to host the event, plus new hotels and an extension to Dubai's metro line.
The 2015 Expo takes place in Milan.