A film like Carol doesn't come along all that often. One that has an engaging story, told beautifully and with an economy that's missing from a lot of films of its kind.

Rooney Mara plays Therese, a sheepish young woman in '50s America who finds herself yearning for a life beyond her own. In her dead-end job, she meets Carol Aird (Cate Blanchett), a beautiful, older woman who's instantly taken with her and vice versa. Through a series of awkward encounters, we see a relationship develop between them. However, Carol's ex-husband, Harge (Kyle Chandler), skits in the background and continues to exert control over her through their daughter. As the relationship flourishes, Mara's character must wrestle with her sexuality and the climate of homophobia in that time.

Director Todd Haynes is in somewhat familiar territory here, having directed the 1995 arthouse classic Safe, about a suburban wife who develops a disorder that drives her to leave her life behind, and Mildred Pierce, the HBO miniseries adapted from James M. Cain's novel in 1941. Here, he's working off a Patricia Highsmith semi-autobiographical novel adapted by playwright Phyllis Nagy and with a cast at the top of their game. Nagy's script is pitch-perfect, rarely needing anything more than a knowing glance or look in order to convey a wealth of emotions; something that actors without Blanchett's or Mara's abilities would be able to convey so easily.

The relationship between them is allowed to develop naturally over the course of the film, gently revealing itself to the audience and to Mara's character as well. It's brilliantly acted by both and it has a sense of authenticity to it, you really believe they do care for one another and are devoted - something you don't see all that often in romantic dramas.Haynes' direction is superb as is Edward Lachman's cinematography, using muted colours in contrast with the bright colours of Blanchett's costumes and period details to completely engross you in the time period.

The supporting cast, likewise, are fantastic. Kyle Chandler gives a career-best performance as Blanchett's husband. In him we see a desperation and a vulnerability, and even though we want to hate him, we can see that he's just as trapped as Carol. Sarah Paulson plays the voice of reason for Carol and, in just one scene, marks herself out as a serious contender for Best Supporting Actress. Overall, Carol is a thoughtful, elegant romance drama that packs an emotional punch with two towering performances from Mara and Blanchett.