1995-2004: McAvoy 15 évesen debütált színészként A közel szobában (1995). Később bevallotta, hogy a filmbe való bekapcsolódásakor nem nagyon érdekelte a színészet, de azután kapott ihletet a színészmesterség tanulására, hogy érzelmek alakultak ki benne színésztársa, Alana Brady iránt. A színészkedést még a PACE Ifjúsági Színház tagjaként folytatta. McAvoy 2000-ben diplomázott a Skót Királyi Zenei és Drámai Akadémián. A 2000-es évek elején vendégszerepelt televíziós műsorokban, és elkezdett filmekben dolgozni. 2001-ben az Out in the Open című darabban egy meleg striciként nyújtott alakítása annyira lenyűgözte Joe Wright rendezőt, hogy Wright elkezdett szerepeket ajánlani McAvoynak a filmjeiben. McAvoy azonban folyamatosan visszautasította ezeket, és csak hat évvel később dolgoztak együtt.
A Donmar Warehouse-ban játszott a Privates on Parade című filmben, és ezúttal Sam Mendes figyelmét is felkeltette. 2001-ben a színész James W. Miller közlegényként szerepelt a Band of Brothers című tizenegy órás második világháborús minisorozatban, amelyet Steven Spielberg és Tom Hanks producerek készítettek. A kritikusok figyelmét 2002-ben a Fehér fogak című négyrészes televíziós dráma minisorozat adaptációjában nyerte el, amely Zadie Smith azonos című regénye alapján készült.
2003-ban McAvoy szerepelt a Sci Fi Channel minisorozatában, a Frank Herbert regényei alapján készült Frank Herbert’s Children of Dune-ban. Ez az egyik legnagyobb nézettségű műsor, amelyet a csatorna sugárzott. További munka következett számára, amikor elvállalta egy elvtelen riporter szerepét a 2003-as State of Play című filmben. A nagy visszhangot kiváltó hatrészes brit drámasorozat egy fiatal nő halálával kapcsolatos újságírói nyomozás történetét meséli el, és a BBC One-on került adásba. A Chicago Tribune “kihagyhatatlannak” nevezte a műsort, és a State of Play-t a szereplők teljesítménye miatt ajánlotta. 2002-ben McAvoy jeleneteket forgatott a Bollywood Queen című filmhez, amelyet úgy jellemeztek, hogy a West Side Story találkozik a Rómeó és Júliával bindisekkel, a film egymásnak feszülő kultúrák középpontjába került szerelmesekről szól; a 2003-as Sundance Filmfesztiválon különleges előadásként mutatták be, az Egyesült Királyság mozijaiban pedig október 17-én nyílt meg.
2004-ben szerepelt a Wimbledon című romantikus vígjátékban, amelyben Kirsten Dunst és Paul Bettany is főszerepet játszott. Következő projektje egy Hal nevű karakter hangja volt a 2004-es Strings című mitikus fantasy film angol nyelvű változatában. Egy másik 2004-es bemutatója az Inside I’m Dancing című ír produkció volt, amelyet Damien O’Donnell rendezett, és amelyben a skót Steven Robertson mellett játszott. Ebben a színész a két főszereplő egyikét alakította: egy duchenne-izomdisztrófiában szenvedő mavericket. McAvoy 2004-et a Shameless első két évadában való szerepléssel zárta, mint Steve McBride, a Channel 4 BAFTA-díjas műsorának erkölcsi hőse.
2005-2007: A Walt Disney Pictures A Narnia krónikái című filmjének bemutatása 2005-ben emelte a közvélemény figyelmét: Az oroszlán, a boszorkány és a ruhásszekrény. McAvoy az Andrew Adamson által készített, C. S. Lewis gyermekregénye alapján készült fantasy-kalandfilm főszereplője volt Tumnus, a faun, aki összebarátkozik Lucy Pevensie-vel (Georgie Henley alakította) és csatlakozik Aslan (Liam Neeson) csapatához. Az Egyesült Királyságban december 9-én került a mozikba. A brit jegypénztáraknál a film az első helyen nyitott, és 498 moziban mintegy 8,7 millió fontot keresett a hétvégén. Világszerte 463 millió fontot hozott a Narnia, ezzel a 41. legtöbb bevételt hozó film lett világszerte. A következő évben elvállalta Brian Jackson főszerepét is, aki a Starter for 10 című filmben egy stréber egyetemi hallgató, aki a nyolcvanas évek közepén helyet nyer egy egyetemi kvízcsapatban. Rendezője David Nicholls volt, aki a film forgatókönyvét saját könyvéből adaptálta. A brit-amerikai produkció november 10-én került forgalmazásba az Egyesült Királyságban. A pozitív visszhang ellenére a film megbukott a kasszáknál, nem tudta megtéríteni 5,7 millió fontos gyártási költségeit.
Forest Whitaker javasolta McAvoyt Kevin Macdonald rendezőnek Nicholas Garrigan szerepére a 2006-os Oscar-díjas, alacsony költségvetésű A skótok utolsó királya című filmben. McAvoy egy skót orvost alakított, aki Ugandában a Whitaker által játszott diktátor, Idi Amin személyi orvosa lesz. Bár a film Amin uralkodásának tényszerű eseményein alapul, a történet részletei és a McAvoy által játszott karakter kitalált, és Giles Foden 1998-as regényéből készült. McAvoy úgy értékelte karakterét, hogy az egy “teljesen önző pöcs”. A túlterhelt McAvoy elájult a számára legnehezebbnek ígérkező jelenet, Nicholas megkínzásának első felvétele közben. McAvoy-t az év legjobb színészének választották a skót BAFTA-díjkiosztón, ahol a film elsöpörte a főbb kategóriákat, és jelölték a legjobb mellékszereplőnek járó BAFTA-díjra is. A film három díjat kapott, köztük az év kiemelkedő brit filmje díjat. Ezzel együtt McAvoy alakítását is dicsérték.
Ezt követően 2007-ben az ír ügyvédet, Tom Lefroy-t és Jane Austen szerelmi érdeklődését alakította a Becoming Jane című történelmi filmben, amelyet az írónő korai élete ihletett. Ezután következett a Penelope, amelynek premierje a 2006-os Torontói Nemzetközi Filmfesztiválon volt. Szintén Christina Ricci főszereplésével készült, és megosztó kritikákat váltott ki. McAvoy karrierjében az áttörést az Atonement című film hozta meg, amely Joe Wright 2007-es adaptációja Ian McEwan azonos című regényéből. A romantikus háborús film középpontjában a szerelmespár, Cecilia és Robbie (Keira Knightley és McAvoy) élete áll, amely darabokra szakad, miután a féltékeny kishúga, Briony (Saoirse Ronan) hamisan vádolja meg nemi erőszakkal. A forgatókönyv elolvasása után McAvoy azt mondta, azt gondolta: “Ha nem kapom meg a szerepet, nem olvasom el a könyvet, mert az lesújtó lesz. Ez egy csodálatos szerep, és nagyon akartam”. McAvoy “hihetetlenül szomorúnak” nevezte a filmet, de felemelő élménynek tartja. Azt is megosztotta, hogy reméli, a nézők “abszolút lesújtva és gyötrődve” maradnak. Az Atonement vetítései a 2007-es Torontói Nemzetközi Filmfesztiválon, ahol az egyik legelismertebb film volt a jelenlévők között, valamint a Velencei Filmfesztiválon voltak. Az Atonement nagy díjesélyes volt; tizennégy BAFTA- és hét Oscar-díjra jelölték. McAvoy-t és Knightley-t is jelölték alakításukért a 65. Golden Globe-díjra. Emellett a filmet a kritikusok is dicsérték, a Metacritic szerint 85-ös tetszési indexe volt. A The Hollywood Reporter írója, Ray Bennett szerint a duó “lenyűgöző és karizmatikus alakításokat nyújtott”.
2008-tól napjainkig: A következő szerepében McAvoy Angelina Jolie és Morgan Freeman oldalán szerepelt a Wanted (2008) című akciófilmben (2008), ahol Wesley Gibsont alakította, egy fiatal amerikai lógót, aki megtudja, hogy bérgyilkosok örökségének örököse. Amikor McAvoy próbajátékra jelentkezett a szerepre, kezdetben elutasították, mert a stúdió hagyományos hollywoodi főszereplő külsejű és testalkatú színészt keresett. Később úgy emlékezett vissza, hogy a próbajátékon részt vevők közül “az alom törpéjének” tartották, de végül 2006 végén megkapta a szerepet, mivel a stúdió “egy kockát akart”. A Wanted című film akciójeleneteinek forgatása közben számos sérülést szenvedett, többek között kifordult a bokája és megsérült a térde. Ennek ellenére a színész azt mondta, hogy “jól érezte magát” a film forgatásán. McAvoy korábban még sosem játszott ilyen műfajban, és úgy gondolta, hogy a Wanted egy lehetőség arra, hogy sokoldalúbb legyen.
A Mark Millar azonos című képregény-minisorozatán alapuló film 2008 júniusában került világszerte a mozikba. Kedvező kritikákat kapott a sajtótól, akiknek általában tetszett, hogy pörgős volt. A jegypénztáraknál a Wanted sikert aratott: a 75 millió dolláros gyártási költségvetéssel szemben 341 millió dolláros bevételt ért el. Ezután következett Az utolsó állomás (2009), egy életrajzi film, amely Leo Tolsztoj híres író utolsó hónapjait mutatja be, és amelynek főszereplője Anne-Marie Duff, McAvoy akkori felesége. Az Egyesült Államokban korlátozott számú mozivásznon mutatták be. Bár a legtöbb kritikus díja a társszereplőkre, Helen Mirrenre és Christopher Plummerre figyelt fel, a Satellite Awards McAvoyt a legjobb férfi mellékszereplőnek jelölte. 2009-ben McAvoy Angelina apjának, Maurice Mouselingnek a hangját adta az Angelina Ballerina: The Next Steps című televíziós sorozatban.
A színpadon is szerepelt 2009-ben az Apollo Színház Three Days of Rain című előadásában. Ő adta a férfi címszereplő hangját a Gnomeo & Júlia (2011) című filmben, amely William Shakespeare Rómeó és Júlia című darabja alapján készült animációs film. Robert Redford The Conspirator (Az összeesküvő) című amerikai történelmi drámájában McAvoy egy idealista háborús hőst alakított, aki vonakodva védi az Abraham Lincoln-merényletben megvádolt társ-összeesküvő Mary Surrattot (Robin Wright). A filmet a 2010-es Torontói Nemzetközi Filmfesztiválon mutatták be. Bár a film vegyes fogadtatásban részesült, a kritikusok dicsérték a színészt munkájáért. Owen Gleiberman Az összeesküvő értékelésében “merevnek” és unalmasnak találta, de McAvoyt “lelkes jelenlétnek” tartotta.
2010 közepén McAvoy megkapta a telepatikus szuperhős, X professzor, az X-Men vezetője és alapítója szerepét az X-Men: Első osztályban. Egy olyan társulathoz csatlakozott, amelyben Michael Fassbender, Jennifer Lawrence és Nicholas Hoult is szerepelt. A Marvel képregények alapján készült filmsorozat előzményfilmje X professzor és Magneto kapcsolatára és csoportjaik eredetére fókuszál. McAvoy gyerekkorában nem olvasott képregényeket, de rajongott az X-Men animációs rajzfilmsorozatért. Az Egyesült Királyságban június 1-jén bemutatott Első osztály a nyitóhétvégén 5 millió font körüli jegyeladással a kasszák élére került. Az Első osztály kedvező kritikákat kapott, és McAvoy alakítását sokan dicsérték. 2011-ben elkezdte forgatni Max Lewinsky szerepét a Welcome to the Punch című brit thrillerben. Ugyanebben az évben McAvoy adta a címszereplő hangját az Arthur Christmas című animációs ünnepi filmben. Emellett főszerepet játszott Danny Boyle Trance című filmjében.
2012-ben McAvoy megkapta Bruce Robertson szerepét a Filth című filmben, amely Irvine Welsh azonos című regényének adaptációja. A film együttes szereplőgárdájában McAvoy egykori osztálytársa, Shauna Macdonald alakítja a feleségét, valamint Jamie Bell, Jim Broadbent, Eddie Marsan és Imogen Poots. Szerepéért McAvoy 2013 decemberében elnyerte a legjobb színészi alakítás díját a British Independent Film Awards-on. Azt is bejelentették, hogy Jessica Chastainnel együtt fog szerepelni egy dupla filmes projektben, az Eleanor Rigby eltűnése (The Disappearance of Eleanor Rigby) című filmben. Ő alakította a férfi főszerepet a Neil Gaiman által írt Neverwhere című rádiójáték-adaptációban. 2016 októberében McAvoy játszotta Richard karakterét a BBC Radio 4 produkciójában, amely Neil Gaiman How The Marquis Got His Coat Back című novelláját dolgozta fel. Gaiman a Hajós szerepét játszotta.
McAvoy 2013 elején szerepelt Shakespeare Macbeth című darabjában a londoni West End-en. A Macbeth volt az első előadás a Trafalgar Transformedben, amely február 9-től április 27-ig tartott. A produkciót Jamie Lloyd rendezte, aki McAvoy legutóbbi színpadi fellépése során, a 2009-es Three Days of Rainben is rendezett. 2015-ben McAvoy elnyerte a legjobb színész díját a londoni Evening Standard Theater Awards-on Jack Gurney alakításáért a The Ruling Class című Peter Barnes-darab felújításában, amelyet Jamie Lloyd rendezett. A darabot 2015. január 16-tól április 11-ig játszották a Trafalgar Studiosban.
McAvoy újra eljátszotta X professzor szerepét az X-Men: Days of Future Past (2014) című filmben, amely világszerte 747,9 millió dolláros bevételt hozott, ezzel a 2014-es év hatodik legnagyobb bevételt hozó filmje lett, és a második legnagyobb bevételt hozó film az X-Men franchise-ban és a 2016-os X-Men: Apokalipszisben. 2016-ban szerepelt M. Night Shyamalan Split című thrillerében Kevin Wendell Crumb, a disszociatív identitászavarban szenvedő, veszélyes képességekkel rendelkező Kevin Wendell Crumb szerepében. Az alakítását a kritikusok dicsérték, egyesek karrierje legjobbjaként üdvözölték. McAvoy játszotta Hazelt a Watership Down minisorozat változatában. 2019-ben újra eljátszotta Crumb szerepét a Glass című filmben, majd visszatért X professzorként a Dark Phoenix című filmben.
McAvoy játszotta a felnőtt Bill Denbrough-t az It Chapter Two című horrorfilmben, az It (2017) folytatásában, amelyet 2019. szeptember 6-án mutattak be, és 473 millió dolláros bevételt hozott a kasszáknál. Szintén 2019-ben McAvoy játszotta Lord Asriel szerepét a His Dark Materials televíziós adaptációjában.
2020. március 4-én bejelentették, hogy az Audible többrészes audio drámává adaptálja Neil Gaiman The Sandman című elismert képregénysorozatát, amelyben McAvoy az Álom karakterének hangját adja.