Sands (JOHNNY DEPP) is a covert CIA agent working in Mexico who wants to make sure that drug lord Barillo (WILLEM DAFOE) doesn't manage to overthrow the President (PEDRO ARMENDARIZ) in a military coup that's to be staged by General Marquez (GERARDO VIGIL).
Accordingly, he sends his local "muscle," Cucuy (DANNY TREJO), to round up the enigmatic and legendary El Mariachi (ANTONIO BANDERAS) to assassinate the military leader. He and his wife, Carolina (SALMA HAYEK), had a bad run in with Marquez in the past and El Mariachi now wants to get his revenge.
At the same time, Sands has dealings with Mexican AFN agent Ajedrez (EVA MENDES) and tries to persuade retired FBI agent Jorge Ramirez (RUBÉN BLADES) to get his revenge on Barillo for previously torturing the agent's past partner. To do so, he'll have to deal with the drug lord's right-hand man, Billy Chambers (MICKEY ROURKE), a criminal fugitive from America.
As all of that is set into motion, El Mariachi and his fellow gun-toting guitar players, Lorenzo (ENRIQUE IGLESIAS) and Fideo (MARCO LEONARDI), set out to find and kill both Marquez and Barillo before their coup is successful.