James McAvoy geldt als een van de meest veelzijdige acteurs van dit moment en wordt vaak onderschat, ondanks zijn vermogen om zowel romantische hoofdrollen als intense schurken en actiehelden te spelen.
Hij kreeg voor het eerst aandacht als charismatische jonge acteur in The Chronicles of Narnia: The Lion, the Witch and the Wardrobe en nam daarna diverse rollen aan die bewijzen dat hij zwakkere scripts kan tillen.
In The Last Station uit 2009 speelt McAvoy een jonge secretaris die de laatste jaren van auteur Leo Tolstoy, vertolkt door Christopher Plummer, meemaakt. De film kreeg Oscar-nominaties voor Plummer en Helen Mirren, maar McAvoys gelaagde werk als de jeugdige waarnemer bleef grotendeels onopgemerkt.
De film The Last King of Scotland uit 2006 draait om de Oegandese dictator Idi Amin, met Forest Whitaker die een Oscar won. McAvoy speelt een fictieve Schotse dokter die verstrikt raakt in Amins wereld en de morele dilemma's en de drang om anderen te helpen van het personage weergeeft.
Starter for 10 uit 2006 was een vroeg voorbeeld van McAvoy als leading man in een coming-of-ageverhaal over een student die zich aansluit bij een quizteam. De dramakomedie verkent klasseverschillen in Groot-Brittannië en toont de ethische worstelingen van het personage en de sterke chemie met Rebecca Hall.
De actiefilm Welcome to the Punch uit 2013 koppelt McAvoy aan Mark Strong in een verhaal dat doet denken aan Heat. Hij speelt een geobsedeerde rechercheur die met persoonlijke neergang te maken heeft terwijl hij een crimineel achtervolgt en levert een volwassen prestatie op weg naar verlossing.
Danny Boyles experimentele thriller Trance uit 2013 toont McAvoy als museummedewerker die betrokken raakt bij een kunstroof. Zijn weergave van wisselende motieven en complexe relaties met personages van Vincent Cassel en Rosario Dawson versterkt de onconventionele toon van de film.
In de film Filth uit 2013 neemt McAvoy zijn meest veeleisende rol op zich als een getroebleerde Schotse rechercheur die verslaafd is en een moord onderzoekt. De prestatie combineert humor, horror en hartzeer op een manier die past bij de wilde stijl van de roman.
De verfilming Atonement uit 2007 castte McAvoy tegenover Keira Knightley in een gedoemde romance uit de Eerste Wereldoorlog. De film kreeg een Oscar-nominatie voor beste film en zijn spel gaf het verhaal zijn emotionele gewicht, naast de beroemde slagveldscène.
X-Men: First Class uit 2011 introduceerde McAvoy als een jongere Charles Xavier in een prequel die zich afspeelt in de jaren zestig. Hij portretteerde het personage als charismatisch en empathisch en bouwde een overtuigende vriendschap op met Michael Fassbenders Magneto die het verhaal droeg.
De ambitieuze tijdreisfilm X-Men: Days of Future Past uit 2014 gaf McAvoy de kans een donkerder kant van Professor X te tonen die worstelt met falen en verslaving. Zijn scènes met Patrick Stewart behoren tot de krachtigste momenten van de franchise.
Split uit 2017 blijft McAvoys signatuurrrol. Nadat Joaquin Phoenix zich terugtrok, speelde hij een man met meervoudige persoonlijkheden in de thriller van M. Night Shyamalan. De rol vroeg om 23 verschillende personages en droeg bij aan het succes van de film en de latere crossover Glass.