The 20 best Christmas films of all time – ranked

Alexandra Pollard
National Telefilm Associates/20th Century Fox/StudioCanal/Warner Bros

Christmas is a time for family, food, forgiveness… and films. Whether it’s because you’ve eaten so much you’re temporarily unable to move from the sofa, or you just need a break from having the same awkward conversations with your relatives, there’s nothing quite like settling in with a box of Quality Street and a festive classic. Here are the best of them – ranging from pure schmaltz to dark, twisted horror – ranked.

20) The Santa Clause (1994)

When Tim Allen’s Scott Calvin accidentally kills Santa Claus (a nice, light-hearted beginning to a family film) he is expected to take his place. He refuses at first – but when his hair turns white, a beard and belly grow overnight, and children start approaching him with their wish lists, he reluctantly takes the mantle. It’s weirder and darker than it has any right to be, but it’s enjoyable to watch.

19) The Apartment (1960)

Shirley MacLaine and Jack Lemmon find love in an elevator in The Apartment (United Artists/Kobal/Rex)

When writer and director Billy Wilder first watched Brief Encounter, in which two people use a friend’s house to consummate an affair, he wrote in his notebook: “What about the poor schnook who has to crawl into the still-warm bed of the lovers?” The result of that scribble is The Apartment, a film that, with its farcical but well-wrought premise and career-best performances from Jack Lemmon and Shirley MacLaine, never puts a foot wrong.

18) Miracle on 34th Street (1994)

Whether you consider this film a heart-warming gem or an insult to the 1947 original might depend on which version you grew up with – but it’s hard to argue with the performances of Richard Attenborough as Kris Kringle, and Mara Wilson as the precociously cynical Dorey.

17) The Holiday (2006)

Film trailer editor Amanda (Cameron Diaz) and wedding columnist Iris (Kate Winslet) exchange homes over Christmas in an attempt to escape their terrible love lives. This Nancy Meyers classic is as predictable as its fake movie trailers, but it’s warm and witty, with a strange but sweet subplot involving an Oscar-winning nonagenarian.

16) Rare Exports: A Christmas Tale (2010)

A bizarre and macabre Santa Clause origin story, this Finnish fantasy horror follows a group of Lapland natives who stumble upon the secret of Father Christmas. To say that he’s not the cuddly, benevolent gift-giver we know and love would be an understatement. To say any more would be to spoil the twisted fun.

15) Happy Christmas (2014)

This low-budget, entirely improvised film from “mumblecore” actor-director Joe Swanberg is an understated and underrated gem. Anna Kendrick is typically charismatic as an irresponsible twenty-something who crashes, uninvited, back into the life of her older brother Jeff (Swanberg), but the film’s secret weapon is a brilliantly nuanced performance from Melanie Lynskey.

14) White Christmas (1954)

(Alastair Muir)

Featuring a reimagined version of the title song, which Bing Crosby introduced in Holiday Inn over a decade earlier, White Christmas was intended to reunite Crosby with Fred Astaire for their third Irving Berlin showcase musical. Astaire declined the project, and eventually Danny Kaye starred instead, as an aspiring entertainer alongside Crosby. The resulting film was a box office smash and a subsequent classic. Astaire missed out.

13) The Bishop’s Wife (1947)

Based on Robert Nathan’s 1928 novel, The Bishop’s Wife stars Cary Grant as perhaps the most charming angel to ever grace the silver screen. Taking on human form in order to help a struggling bishop (David Niven) and his fractured marriage, Grant’s Dudley accidentally falls in love with the eponymous Julia (Loretta Young). He’s an angel, though, not a homewrecker, and all is well come Christmas Eve.

12) Die Hard (1988)

Whatever side you’re on in the infernal debate over whether it’s actually a Christmas movie (Bruce Willis thinks not), it's hard to deny that Die Hard is a perfect action movie. That it takes place on Christmas Eve, and features lines like, “Now I have a machine gun, ho-ho-ho”, makes it ideal holiday viewing too – particularly if you’re a little sick of festive slush.

11) A Christmas Carol (1999)

There have been about a hundred screen adaptations of Charles Dickens’s iconic novella, which sees a penny-pinching miser change his ways after encountering the ghosts of his Christmas past, present and future. Though this made-for-television film is far from the most famous reimagining, it is one of the best – thanks in no small part to perfectly pitched performances from Patrick Stewart and Richard E Grant.

10) Meet Me in St Louis (1944)

(Getty Images)

Sick of playing juvenile roles, Judy Garland nearly turned down her role as the lovesick Esther Smith in this musical comedy. When she finally agreed to do it, the production was marred by her erratic behaviour – she would regularly turn up to set hours late, or not turn up at all. “It was some years later before I really knew what she’d been going through,” her co-star Mary Astor later said, alluding to Garland’s struggles with mental health issues and addiction – but you’d never know any of that watching this warm, charming film. It’s also responsible for one of the best Christmas songs ever made: “Have Yourself a Merry Little Christmas”.

9) Home Alone 2: Lost in New York (1992)

It is a truth universally acknowledged that the Home Alone franchise went on for three films too long – but this first sequel is surprisingly wonderful. Sure, it follows almost the exact same formula as the original, and simply relocates to the Big Apple, but with a formula this good, and with Macaulay Culkin still on board (he wisely bowed out after this one), it’s hard to complain. If you’re after festive cheer, though, you might want to fast forward through Donald Trump’s brief cameo.

8) Carol (2015)

Affairs of the heart: Rooney Mara, left, and Cate Blanchett as lovers Therese and Carol in the adaptation of Patricia Highsmith’s novel

When it comes to Christmas films, there is no shortage of love and romance – but it’s all overwhelmingly straight. Even Love Actually filmed a queer storyline among its 524 interweaving plots, before deciding it should be cut from the film, leaving that “Colin goes to America” abomination intact. And so Todd Haynes’s Carol, a beautifully shot adaptation of Patricia Highsmith’s 1952 novel in which department store worker Therese (Rooney Mara) falls in love with a mysterious older woman (Cate Blanchett) in the run up to Christmas, is a welcome break from heteronorm-nativity.

7) Love Actually (2003)

We’ve all read that Jezebel article by now, and know that Love Actually is flawed as hell. But there is far too much to enjoy in this ensemble romcom to write it off – namely Emma Thompson’s extraordinary, rightly revered performance as the wronged wife of Alan Rickman.

6) Gremlins (1984)

There are three simple rules to keep a gremlin from wreaking havoc: don’t expose it to the light, don’t get it wet, and never feed it after midnight. Naturally, over the course of this Christmas comedy horror, all three of those rules are broken. The ensuing chaos makes for riotous viewing.

5) The Muppet Christmas Carol (1992)

The Muppet Christmas Carol (U), 4.35-6.15pm, C4 Michael Caine stars in the Muppet’s take on Dickens’ tale. Keeping the morals of the original story the Muppet’s add a touch of light-hearted frivolity to an enjoyable family film.

Who’d have thought that one of the best interpretations of Charles Dickens’s festive fable would come courtesy of a bunch of wise-cracking puppets? In his role as Ebeneezer Scrooge, Michael Caine vowed to act “like I’m working with the Royal Shakespeare Company”, whatever ridiculous antics were happening around him. His tactic worked.

4) The Snowman (1982)

Though this beautiful, wordless animation is not widely known outside the UK – it was first broadcast on the then fledgling Channel 4 in 1982 and then annually ever since – it is well worth 26 minutes of anyone’s time. Revolving around a young boy and a snowman come to life (a little like Jack Frost, except not terrible), the film ends with a breathtaking flourish, as the pair fly over England’s snowy plains to the melancholy strains of “Walking in the Air“.

3) Elf (2003)

Elf featuring Will Ferrell is considered one of the best Christmas movies (New Line Media )

This fish-out-of-water tale, in which one of Santa’s elves (Will Ferrell) discovers that he’s actually a human and sets out to New York to find his father, could have been supremely annoying if it weren’t for Ferrell’s absolute commitment to his ludicrous role. Bolstered by strong performances from James Caan, Mary Steenburgen and Zooey Deschanel, Elf manages to be both self-aware and defiantly uncynical.

2) Home Alone (1990)

After revelling for a while in every child’s ill-thought-out fantasy – “I made my family disappear,” says Macaulay Culkin’s Kevin when his family accidentally leave on holiday without him – Home Alone then promptly changes tack, inserting two grimy burglars into the mix. Cue some of the most inventive, and surprisingly violent, self-defence techniques you’ve ever seen.

1) It’s a Wonderful Life (1946)

Family values: 'It's a Wonderful Life' (AP)

Admittedly, for about 120 of this film’s 130 minutes, it’s really not a wonderful life at all. In fact, this tale of a down-on-his-luck bank clerk (James Stewart) driven to the brink of suicide, before a trainee angel shows him what the world would have been like without him (spoiler: much worse), is deeply emotionally draining. But it’s also warm, funny, timeless, life-affirming, and a deserved classic.