Christian Pulisic leads US past Mexico to reach CONCACAF Nations League final
Pulisic capitalised on some sloppy Mexican defending to score the opener in the 37th minute, finding space to fire a low shot past keeper Guillermo Ochoa.
The Chelsea winger struck again in the opening seconds of the second half when Timothy Weah set him up in front of goal for an effortless finish to make it 2-0.
Frustration got the better of Diego Cocca's side as defender Cesar Montes was sent off before the US were also reduced to 10 men when Weston McKennie was red carded following a melee.
Ricardo Pepi wrapped up the scoring in the 78th minute before the game spun out of control, with Sergino Dest and Gerardo Arteaga being sent off and the match being paused due to homophobic chanting in the crowd.
The US play Canada in the final on Sunday with Mexico seeking some solace in the bronze medal match against Panama.