McAvoy was born on 21 April 1979 in Glasgow, Scotland, to Elizabeth (née Johnstone), a nurse, and James McAvoy senior, a bus driver. He was raised in Drumchapel, Glasgow by his grandparents after his father abandoned his mother when James was 7. He took the place at the RSAMD (now the Royal Conservatoire of Scotland) and, when he graduated in 2000, he moved to London. He had already made a couple of TV appearances by this time and continued to get a steady stream of TV and movie work until he came to attention of the British public in 2004 playing car thief Steve McBride in the successful UK TV series Shameless (2004) and then to the rest of the world in 2005 as Mr Tumnus, the faun, in Disney’s adaptation of C. S. Lewis’s The Chronicles of Narnia: The Lion, the Witch and the Wardrobe (2005). In The Last King of Scotland (2006) McAvoy portrayed a Scottish doctor who becomes the personal physician to dictator Idi Amin, played by Forest Whitaker. McAvoy’s career breakthrough came in Atonement(2007), Joe Wright’s 2007 adaption of Ian McEwan’s novel.
Since then, McAvoy has taken on theatre roles, starring in Shakespeare’s ‘Macbeth’ (directed by Jamie Lloyd), which launched the first Trafalgar Transformed season in London’s West End and earned him an Olivier award nomination for Best Actor. In January 2015, McAvoy returned to the Trafalgar Studios stage to play Jack Gurney, a delusional English earl, in the first revival of Peter Barnes’s satire ‘The Ruling Class’, a role for which he was subsequently awarded the London Evening Standard Theatre Award’s Best Actor.
On screen, McAvoy has appeared as corrupt cop Bruce Robertson in Filth (2013), a part for which he received a Scottish BAFTA for Best Actor, a British Independent Film Award for Best Actor, a London Critics Circle Film Award for British Actor of the Year and an Empire Award for Best Actor. He has also reprised his role as Professor Charles Xavier inX-Men: Days of Future Past (2014), and will star in the next film in the franchise: X-Men: Apocalypse (2016). In 2017, McAvoy will appear in Split (2017), M. Night Shyamalan’s suspense thriller.
McAvoy has received BIFA nominations for Best Actor for his roles in The Last King of Scotland (2006) and Filth (2013), winning for the latter.