A secret ballot was held by the World Rugby council in London on Wednesday afternoon to choose between France, Ireland and preferred hosts South Africa.
The European country recorded 18 votes in the first round of voting, two short of the majority required, but they received 24 votes in the second round - nine more than 1995 hosts South Africa, who had been heavily backed beforehand.
World Rugby chairman Bill Beaumont said: "We were fortunate to have three great bids. Two of the candidates will be extremely disappointed, obviously. I am delighted for France. It's going to be a really exciting tournament."
France has staged the competition on two previous occasions, last doing so in 2007 when the Springboks beat England in the final.