With nearly 100 percent of the vote counted, Macron had 66 percent to LePen's 34 percent, according to the official count from the Interior Ministry.
Macron received congratulations from several foreign leaders, including U.S. President Donald Trump.
"Congratulations to Emmanuel Macron on his big win today as the next President of France," Trump said on Twitter. "I look very much forward to working with him!"
Macron of the En Marche! Party, who has never held elected office, will be France's youngest president at the age of 39.
Le Pen of the National Front Party called Macron to concede the election shortly after polls closed at 8 p.m. and exit polling data from Ipsos, Ifop and BVA indicated a strong lead for the centrist candidate.
The result came at the end of a tumultuous campaign that saw Macron and Le Pen come out on top of a field of 11 candidates in an initial round of voting, capturing 24 percent and 21 percent respectively.
The campaign took a further twist when an information hack led to the release of a trove of documents related to the Macron campaign, which said some of the released documents were fraudulent. The release came at the start of France's mandated media blackout on the final day before voting.
European Commission President Jean-Claude Juncker congratulated Macron on Twitter.
"Happy that French voters chose a European future," Juncker tweeted.
During the campaign, Le Pen called for France's exit from the European Union.
France's outgoing Socialist Prime Minister Bernard Cazeneuve released a statement hailing the results, saying "voters have today rejected the extreme right's dismal project, and shown their unmovable commitment to the values of the Republic."
Le Pen congratulated Macron in a short speech and called on "all patriots to join" her party in what she described as a struggle between "patriots and globalists."