Клубная карьера
Астон Вилла
Барри перешёл в Астон Виллу из Брайтон энд Хоув Альбиона как юниор в 1997. Он сыграл свой первый матч за Астон Виллу 2 мая 1998 против Шеффилд Уэнсдей. Барри стал универсальным игроком и капитаном, играя как центральный защитник, затем как левый защитник. Тогда он начал играть на позиции левого полузащитника, а после стал центральным полузащитником.
В апреле 2005, в матче против Ньюкасл Юнайтед Барри вмешался в спор между игроками команды соперника Ли Бойером и Кироном Дайером.
Во время игры лиги против Болтон Уондерерс 28 октября 2007 года, Барри стал самым молодым игроком, сыгравшим в 300 играх Премьер-лиги (в возрасте 26 лет 247 дней), опередив бывшего рекордсмена Фрэнка Лэмпарда. В ноябре 2007 Астон Вилла наградила Барри свидетельством о пребывании в течение 10 лет в клубе.
С апреля 2008 Барри, приближаясь к 400 играм за Астон Виллу, являлся ветераном команды. 5 апреля 2008 года Барри помог обыграть 4—0 Болтон Уондерерс, и тем самым закончить неудачную серию из 5 поражений подряд. Он забил два гола и дважды ассистировал.
В мае 2008 Ливерпуль сделал серию предложений купить Барри, все из которых были отклонены Астон Виллой. Барри публично раскритиковал своего менеджера, Мартина О’Нила, обвиняя его в умышленном удержании игрока в клубе, и дальнейшем заявил о желании присоединиться к Ливерпулю, чтобы играть в Лиге Чемпионов. О’Нил отрицал это заявление. Дальнейшее предложение от Ливерпуля приблизительно ?15 миллионов было отклонено, поскольку эта цена всё ещё отличалась от запрашиваемой цены Виллы в ?18 миллионов.
Барри был тогда лишен звания капитана команды, оштрафован на заработную плату за 2 недели, отстранён от тренировок с командой.
Он возвратился в состав Астон Виллы, в Матче кубка УЕФА против Хабнарфьордюр, в котором он забил и Вилла победила 4—1. Гол в матче против Хабнарфьордюр стал первым голом Барри в европейском кубке, с того момента, как он забил пенальти в матче Кубка Интертото против Сельта в 2000. 18 сентября 2008 Барри сыграл свой 400 матч за Виллу. В этом матче Барри забил пенальти, и Вилла победила 3—1. Также он забил за Виллу, в первом матче группового этапа Кубка УЕФА против Аякса 23 октября 2008. Из-за слухов о переходе в течение сезона 2008-09, О’Нил передал капитанскую повязку центральному защитнику Мартину Лаурсену. К Лаурсену звание капитана вернулось после ухода Барри летом 2009. Всего Гарет Барри сыграл 441 матч за Астон Виллу, забил 52 мяча.
Манчестер Сити
2 июня 2009 Барри перешёл за ?12 миллионов в Манчестер Сити и подписал с ним пятилетний контракт. Он выбрал майку с номером 18. Многие поклонники Астон Виллы публично раскритиковали Барри за этот переход, однако, он написал письмо в газету Бирмингем Мэил, в котором он благодарил поклонников Виллы за поддержку, утверждая, что переход в Сити было для него «новым вызовом». Превосходя ожидания, он забил свой первый гол за Сити в межсезонье, играя против Селтика. А первый гол в Премьер-лиге Барри забил в игре против Манчестер Юнайтед 20 сентября, сделав счёт 1—1, но в итоге Сити проиграл 4—3. Три дня спустя он забил в матче Кубка лиги против Фулхэма, чтобы сделать счёт 1—1; Сити в дополнительное время довёл матч до победы. 16 февраля Гарет забил мяч в ворота Сток Сити и спас команду от поражения.
Карьера в сборной Англии
Барри - экс-капитан сборной Англии до 18 лет. В сборной до 21 года он дебютировал в игре против Чешской Республики в 1998. Гарет сыграл 27 игр для сборной до 21 года. Этот рекорд позже был побит бывшим одноклубником Барри по Астон Вилле Джеймсом Милнером.
Позже Кевин Кигэн взял Барри в сборную Англии, и на сегодняшний день он - единственный игрок сборной, который играет при каждом тренере, с того момента, как был приглашен Кигэном. После травмы Джейсона Уилкокса Гарет смог поехать на чемпионат Европы 2000 года. Барри дебютировал в сборной Англии, выйдя на замену в товарищеской встрече против Украины 31 мая 2000. Его первый выход в основном составе случился в игре против Франции 2 сентября 2000.