Alonso outlasted Toronto Blue Jays slugger Vladimir Guerrero Jr. to claim the Derby trophy and $1 million prize. He became the third rookie ever to win the Home Run Derby, joining co-champ Wally Joyner (1986) and Aaron Judge (2017).
Alonso, who has a base salary of $555,000 this season, said he would donate 10 percent of his winnings between two charities.
"That was a blast. I'm going to remember that for the rest of my life," Alonso said. "I have the utmost respect for the people that put their lives on the line every single day. I just want to show my gratitude because a bad day for me is a lot different than a bad day for the servicemen and women that serve this country."
Guerrero blasted a record 91 homers in the competition but slowed down in the last round due to fatigue. The rookie slugger had 22 home runs in the final round but posted a single-round record 40 homers to beat Los Angeles Dodgers outfielder Joc Pederson in a marathon semifinal matchup.
Guerrero edged Pederson 40-39 in the semis after three tiebreakers. The Blue Jays third baseman had set the single-round record in the first round with 29 long balls before breaking that mark later in the night.
Alonso defeated Atlanta Braves star Ronald Acuna Jr., who beat Pittsburgh Pirates slugger Josh Bell during the first round, in the semifinals. Alonso launched his 20th homer of the round over the trees in center field to edge Acuna's 19.
Guerrero had the longest home run of the night with a 488-foot blast in the second round.
Pete Alonso of the New York Mets wins MLB Home Run Derby