Родился 21 апреля 1979 года в шотландском городе Глазго. Его отец работал строителем, а мать была медсестрой. Также у Джеймса есть сестра, ставшая впоследствии вокалисткой шотландской группы «Streetside». Их родители развелись, когда Джеймсу было семь лет и мальчика отправили на воспитание к бабушке с дедушкой по материнской линии, а сестра осталась с матерью, у которой были проблемы со здоровьем. Отец с тех пор не появлялся в жизни Джеймса. В детстве будущий актер учился в католической школе и, будучи очень религиозным, хотел стать священником. Однако, в тот же период он участвовал в постановках юношеского театра. Дальнейшая актерская карьера началась довольно случайно. МакЭвой, когда ему было шестнадцать лет, ради интереса заглянул на пробы к режиссеру Дэвиду Хэйману, преподающему в его школе, и волею судьбы он был утвержден на одну из ролей в фильме «Соседняя комната» (1995). А спустя пять лет (в 2000 году) он уже числился выпускником Королевской Шотландской Академии Музыки и Драмы.
Следующим появлением Джеймса на экране стала эпизодическая роль в драме «Возрождение» (1997). Но какой-то заметный успех пришел в МакЭвою благодаря участию в военном мини-сериале Стивена Спилберга «Братья по оружию» (2001). В последующие годы Джеймс принимает участие в работе над разными проектами, среди которых сериалы «Война Фойла» (2002-2008), «Дети дюны» (2003), «Большая игра» (2003) и драма «Золотая молодежь» (2003). А за роль в сериале «Бесстыдники» (2004-2005) Джеймс номинировался на премию British Comedy Award. Позднее он сыграл в таких фильмах, как «Уимблдон» (2004), «…А в душе я танцую» (2004) и мини-сериале от BBC «Шекспир на новый лад» (2005). Более заметными ролями обернулось участие Джеймса в работе над картинами «Хроники Нарнии: Лев, колдунья и волшебный шкаф» (2005), «Последний король Шотландии» (2006) и «Пенелопа» (2006). А в получившей хорошие отзывы критиков комедии «Попасть в десятку» (2006) МакЭвою уже достается главная роль.
В 2007-м году наступает существенный шаг в актерской карьере Джеймса, когда на экраны выходят мелодрамы «Джейн Остин» (2007) и «Искупление» (2007), за роль в которой он был номинирован на премию «Золотой глобус». Успех этих фильмов не только положил начало популярности актера, но и поспособствовал приглашению его на главную роль в блокбастере «Особо опасен» (2008), где его партнершей по съемочной площадке выступила Анджелина Джоли. Фильм оказался успешным, но сам актер не спешил окунаться в голливудскую жизнь и достаточно избирательно относился к предлагаемым ролям, в итоге снявшись в 2009 году в картине «Последнее воскресение» (2009), рассказывающей о завершающем этапе жизни Льва Толстого, и в следующем году - в драме «Заговорщица» (2010). После чего он продолжил сниматься в крупных голливудских проектах. Его следующим блокбастером стал супергеройский боевик «Люди Икс: Первый класс», где сыграл молодого Чарльза Ксавьера. (2011). Впоследствии он еще трижды вернётся к этой роли в фильмах «Люди Икс: Дни минувшего будущего» (2014), «Люди Икс: Апокалипсис» (2016) и «Люди Икс: Тёмный Феникс» (2019).
В 2013 году Джеймс сыграл главную роль в черной комедии «Грязь» (2013). Критики и зрители были в восторге от игры МакЭвоя. За роль в этом фильме он получил премию британского независимого кино и премия Лондонского кружка кинокритиков. За ним последовали роли фильмах «Добро пожаловать в капкан» (2013), «Транс» (2014), «Исчезновение Элеанор Ригби» (2014), «Виктор Франкенштейн» (2015) и «Погружение» (2017).
В 2017 Джеймс сыграл одну из своих лучших ролей в триллере «Сплит» (2017), где предстал в образе Кевина Крамба - маньяка, страдающего множественным расстройством личности, и шпионском боевике «Взрывная блондинка» (2017). В 2019 он вернулся к роли Крамба в фильме «Стекло» (2019), а также исполнил главную роль в фильме ужасов «Оно 2» и телесериале «Темные начала» (2019-н.в).
Долгое время Джеймс жил со своей бывшей однокурсницей Эммой Нельсон, расставание с которой привело к проблемам с алкоголем. Но в 2004 году на съемках сериала «Бесстыдники» он познакомился с актрисой Энн-Мэри Дафф (она старше его на девять лет), которая вдохнула в него новую жизнь. В 2006 году пара поженилась, а в июле 2010-го у них родился сын. В 2016 Джеймс и Энн-Мэри развелись, но сохранили дружеские отношения и периодически живут вместе, чтобы заниматься воспитанием сына.