Once Upon a Time in Mexico (2003): cast, story & where to watch

2003 · Film · ★ 6.3

Once Upon a Time in Mexico poster

Released in 2003, Once Upon a Time in Mexico is an action, drama and mystery film directed by Robert Rodriguez, running about 102 minutes. “The Time Has Come.” — that tagline sets the tone.

What it’s about. A CIA agent hires hitman "El Mariachi" to assassinate a Mexican general hired by a drug kingpin attempting a coup d'état.

Who’s in it. Once Upon a Time in Mexico stars Antonio Banderas as El Mariachi, Salma Hayek Pinault as Carolina, Johnny Depp as Sands and Eva Mendes as Ajedrez, among others.

How it landed. With an audience score of 6.3/10, Once Upon a Time in Mexico has drawn a solid, mixed-to-positive response. It went on to earn $98.2M at the box office.

Where to watch. In US you can stream it on Philo and rent or buy it from Amazon Video, Apple TV Store, Google Play Movies and YouTube. See the full, country-by-country breakdown on our where to watch Once Upon a Time in Mexico page.

If you liked it. Fans of Once Upon a Time in Mexico tend to enjoy The Dark Knight, The Lord of the Rings: The Return of the King, Inception and The Lord of the Rings: The Fellowship of the Ring.

Frequently asked

Where can I watch Once Upon a Time in Mexico (2003)?
In US, Once Upon a Time in Mexico is available to stream on Philo, and rent or buy from Amazon Video, Apple TV Store and Google Play Movies. Availability varies by country — check our where-to-watch page for every region.
Is Once Upon a Time in Mexico worth watching?
Once Upon a Time in Mexico holds an audience score of 6.3 out of 10, and is a strong pick if you enjoy action, drama and mystery. Reactions are mixed, so it may depend on taste.
Who stars in Once Upon a Time in Mexico?
Once Upon a Time in Mexico stars Antonio Banderas, Salma Hayek Pinault, Johnny Depp, Eva Mendes and Mickey Rourke.
When was Once Upon a Time in Mexico released?
Once Upon a Time in Mexico was released in 2003, with a runtime of about 102 minutes.