A dramatic CONCACAF Nations League final saw the USA edging past Mexico 3-2 in extra time as Christian Pulisic scored the winner from the penalty spot.

Pulisic scored the winning penalty but Mexico had a chance to equalise with their own penalty when John Brooks handled the ball in the box in the 4th minute of the second half of extra time to send the game into a penalty shootout.

Andres Guardado stepped up to take it but he was denied by substitute keeper Ethan Horvath who pulled off a good save to his bottom right to help the Americans hold onto the victory.

Mexico scored the opening goal after just a minute when Jesus Corona was gifted the ball by Mark McKenzie after just 62 seconds to put El Tri up 1-0.

The Stars and Stripes just could not find their rhythm to get back into the game and Mexico thought they had made it 2-0 in the 26th minute when they scored from a corner kick but the goal was ruled offside by VAR.

This seemed to spring some life into the USA as within a minute, they found the equaliser from their own corner kick as Borussia Dortmund attacker Gio Reyna equalised for the Americans.

Diego Lainez put Mexico back in front only for his goal to be cancelled out late on by Weston McKennie’s header to take the game into extra time.

The two sides remained deadlocked going into the second period of added time.

USA

Christian Pulisic #10, Weston McKennie #8 and Tyler Adams #4 of the United States celebrate their win over Mexico in the CONCACAF Nations League Championship Final. (Photo by John Dorton/ISI Photos/Getty Images)

Pulisic, who joined up with the USA squad straight after winning the Champions League with Chelsea, won the penalty himself, going down in the box under a challenge by two Mexico defenders.

Referee John Pitti initially opted against awarding a penalty but it was given after the lengthy VAR process that also saw Martino sent off. Pulisic smashed the ball into the top corner when play resumed silencing the Mexico fans.

Mexico still had a chance to level six minutes later when they were awarded a penalty following a handball, but Horvath saved well from Andres Guardado.

“I’m kind of speechless to be honest,” Horvath said after the inaugural final.

“If you’re on the bench as a keeper you don’t expect to come in the game.

“It’s just a whole bunch of emotion. It’s a special moment for me in my hometown of Denver.”

The CONCACAF Nations League tournament was created for teams in North America, Central America and the Caribbean and will be played every two years.

The USA next play Costa Rica in friendly on Wednesday.