Typical of Arriaga's works, this film is told in a non-linear narrative, where events are revealed out of sequence. The following plot summary is in chronological order, and thus does not reflect the exact sequence of the events as seen on screen.
The story starts some time during the mid-1990s in a small town near Las Cruces, New Mexico (close to the border with Mexico), where we are introduced to Gina (Kim Basinger), a wife and mother to four children. Gina is having an affair with a local man named Nick Martinez (Joaquim de Almeida), who also has a family of his own.
However, unbeknownst to the two, Gina's teenage daughter Mariana (Jennifer Lawrence) finds out about their love affair. Mariana follows her mother to Nick's trailer. Knowing the two are inside; and, in an effort to make them end their affair, she disconnects the gas pipe leading into the trailer and sets it on fire. The flames eventually reach a gas tank, which explodes, consuming the entire trailer and claiming Nick's and Gina's lives, although Mariana had no intention of killing either of them.
After their funeral, Mariana and Nick's teenage son, Santiago (JD Pardo), slowly begin to develop a relationship of their own. Mariana soon becomes aware that she is pregnant with Santiago's daughter.
The two flee to Mexico amid disapproval from their families and decide to have the baby there; but, after she gives birth to their daughter, Mariana abandons her family and changes her name to Sylvia.
More than a decade later, Sylvia (now played by Charlize Theron) is working at a high-end restaurant in Oregon. Despite her success, she resorts to promiscuity and has persistent thoughts of suicide. Here, we see a mysterious man following her around. It is Carlos (Jose Maria Yazpik), a close friend and business-partner of Santiago. After an accident involving their crop-dusting plane, the hospitalized Santiago urges Carlos to look for Sylvia, for whom Santiago has been searching since she abandoned him and their two-day-old daughter.
Because Carlos doesn't speak English and Sylvia doesn't speak Spanish, he has trouble explaining to her the purpose of his visit. Instead, he surprises Sylvia with her now twelve-year-old daughter, Maria (Tessa Ia). Maria, who was already reluctant to meet her estranged mother, is heartbroken when Sylvia hastily departs without speaking to either when she sees Maria and Carlos waiting for her outside her home. After realizing her mistake, Sylvia enlists the help of her friend Laura (Robin Tunney) to find Carlos and Maria.
After reuniting, Sylvia, Maria, and Carlos go to Mexico, where Sylvia apologizes to Maria for the years she's been absent from her life. They visit Santiago, who is sedated due to the extent of his injuries. Sylvia confesses her past sins by his bedside, unsure if he will ever wake up again. The doctor reassures them that he will be fine, and the story concludes on a hopeful note.