Вихованець футбольної школи «Пахтакора» (Ташкент), у структурі якого знаходився з восьми років. На одному з юнацьких турнірів 15-річного Максима навіть примітив скаут «Тоттенхема», проте далі інтересу справа не пішла. І Шацьких з резервістами «Пахтакора» грав у першості міста, часто відзначаючись голами.
В 1995 році місцева приватна компанія створила в другій лізі футбольний клуб ЮТКО, у який перший тренер Макса Сергій Ковальов взяв 16-17-річних хлопців зі свого випуску і почав грати з ними в нижчому професійному дивізіоні. Капітаном команди став Шацьких, який забив 22 м'ячів в 34 матчах.
Вдалі виступи молодого футболіста помітив клуб «Чіланзар», який в ту пору якраз грав у фінальному турнірі за вихід у вищу лігу. Ташкентська команда орендувала Максима на вирішальні матчі, і той забив кілька найважливіших м'ячів, завдяки яким і вдалося вирішити завдання підвищення в класі.
Втім, Шацьких так і не зіграв в узбецькій вищій лізі. Він вирішив спробувати сили в російському футболі, перейшовши у «Сокол-ПЖД». У Саратові він відразу заграв в команді під керівництвом Олександра Корєшкова, але вже на початку свого першого дорослого сезону отримав травму і не зміг закріпитися в клубі. Залишок сезону 18-річний нападник провів у скромному «Торпедо» (Волзький). Команда не ставила високих цілей, зате в ній юний російський узбек знайшов свого тренера — Володимир Деркач довіряв Максиму, і він відповідав старанністю і хорошою грою. Сезон 1996 року Шацьких дограв у Волзькому, а потім, слідом за Деркачем, перейшов в тольяттинську «Ладу». У першому ж матчі за нову команду, 3 липня1997 року, Максим забив свій перший м'яч — в Раменському у ворота «Сатурна».
У сезоні 1999 року Шацьких захищав кольри Іжевського«Газовика-Газпром», після чого перейшов в калінінградську«Балтику», куди його покликав все той же Деркач. В Балтиці 20-річний форвард за півсезону забив 5 м'ячів у чемпіонаті, а в кубку Росії зробив хет-трик у ворота смоленського «Кристалу».
«Динамо» (Київ)
Вдала гра футболіста зацікавила скаутів київського «Динамо», яке прямо посередині сезону, в липні 1999 року, викупило контракт футболіста. Вже через добу, 24 липня1999 року, Шацьких дебютував в основному складі «Динамо» в матчі чемпіонату проти львівських «Карпат». У стартовому складі Максим дебютував відразу в єврокубках, у кваліфікації з «Жальгірісом», — і відзначився дублем, ставши героєм того матчу. Преса відразу порівняла форварда з Андрієм Шевченком, який якраз перебрався у Мілан. Вдало Шацьких відіграв і в наступному відбірковому етапі, забивши «Ольборгу» і в Данії, і у Києві.
Після такого старту від новачка чекали вдалої гри і в матчах групового етапу, проте надалі в єврокубках Максим перестав багато забивати, відзначившись лише голом в матчі проти леверкузенського«Баєра» у Києві. Щоправда, в чемпіонаті справи в узбецького легіонера йшли успішно — уже в першому сезоні з 20 голами він став найкращим бомбардиром чемпіонату України, а три роки потому повторив і історичний рекорд іншої легенди «Динамо», Сергія Реброва — 22 голи за сезон.
За десять сезонів у «Динамо» Максим двічі ставав найкращим бомбардиром чемпіонатів України, тричі — кубка України, 23 м'ячі забив в єврокубках і 97 — у вищій лізі (серед них 4-хет-трики), ставши найрезультативнішим легіонером «Динамо» в історії і потрапивши до Клубу Олега Блохіна. Крім того, разом з клубом Шацьких став 6-разовим чемпіоном України, 5-разовим володарем національного кубка і 2-разовим володарем Суперкубка, а також отримав українське громадянство.
Після повернення в лютому 2010 року в Україну, Шацьких прийняв запрошення Вадима Рабиновича, ставши гравцем Арсеналу. І вже 4 квітня2010 року, відзначившись забитим голом у грі проти запорізького «Металурга», довів лік м'ячів, забитих у вищому дивізіоні чемпіонату України, до 100 та увійшов таким чином до символічного Клубу Сергія Реброва[1]. В честь цього господар «Арсеналу» вручив Максиму навіть «золотий м'яч»; крім того 2010 року його ім'ям було названо бомбардирський Клуб Максима Шацьких, створений для футболістів-легіонерів українських команд.
15 серпня2010 року в матчі проти луцької«Волині» (1:1) Максим, забивши на 71-й хвилині гол, встановив рекорд чемпіонатів України — першим забив 100 м'ячів з гри.
А вже 11 вересня2010 року, в матчі проти «Таврії» (0:1), Максим Шацьких провів 500-й офіційний матч у своїй професійній кар'єрі (матчі за клуби в чемпіонатах, кубках, єврокубках і за збірну Узбекистану), у яких забив 217 м'ячів .
Матч проти «Іллічівця» (3:1), 20 березня2011 року, став для Шацьких ювілейним, 250-м зіграним у прем'єр-лізі чемпіонатів України. У цій грі на 43 хвилині Шацьких відзначився голом у ворота суперника, який став 109-м голом Максима в чемпіонатах України.
У сезоні 2011—12 Шацьких забив три м'ячі і допоміг команді вперше в своїй історії вийти до єврокубків.
14 січня2013 року на офіційному сайті одеського «Чорноморця» з'явилася інформація про те, що Максим Шацьких, який декілька років тому отримав українське громадянство, підписав з клубом контракт, розрахований на 2,5 роки[2]. 16 березня2013 року дебютував за «Чорноморець» у матчі проти клубу «Шахтар» (Донецьк). 1 червня2013 року, зігравши у сімох матчах за клуб та не вписавшись у тактичні побудови Романа Григорчука, з обопільної згоди розірвав контракт з ФК «Чорноморець» та повернувся знову до «Арсеналу»[3].
«Говерла» (Ужгород)
Наприкінці 2013 року у пресі було повідомлено, що Максим Шацьких підписав контракт з ужгородською «Говерлою» терміном на 2,5 роки[4].
Дебютував у матчі 19 туру чемпіонату проти запоріжського «Металурга». У цьому матчі відзначився й дебютним голом, який забив на 59 хвилині матчу. У матчі 28 туру ужгородці здобули розгромну перемогу, перемігши з рахунком 6:0 луцьку «Волинь». Шацьких відзначився голом на 3 хвилині, а потім двома гольовими передачами на 29 і 36 хвилинах. У наступному матчі подарував нічию своєму клубу, віддавши гольову передачу на 93 хвилині матчу з «Чорноморцем».
Наступний сезон почав з голу на 15 хвилині в ворота «Карпат». У наступному матчі, з «Металургом», забив гол на 86 хвилині. Відзначився голом й у кубковому матчі проти «Черкаського Дніпра». У матчі проти «Іллічівця» відзначився гольовою передачею. Забив гол у 8 турі в ворота луганської «Зорі».
У другі половині чемпіонату віддав гольовий пас на 70 хвилині матчу проти «Металіста». У матчі проти «Волині» відзначився гольовим пасом на 28 хвилині і отримав жовту картку на 66. Закінчив сезон матчем 26 туру проти дніпропетровського «Дніпра».
Збірна
Грав у всіх збірних Узбекистану — від юнацької до молодіжної.
1999 року в віці 20 років дебютував у національній команді Узбекистану, в першому ж матчі забивши збірній Азербайджану 3 голи. Всього у перших чотирьох матчах за збірну молодий Шацьких відзначитися голами 8 разів.
У 2005 році узбецький форвард потрапив до трійки найкращих гравців Азії (під № 2).
15 жовтня2008 року забив свій 30-й гол за збірну Узбекистану в матчі групового турніру Чемпіонату світу 2010 проти збірної Японії, тим самим обійшов Мирджалола Касимова (29 голів) в списку найкращих бомбардирів в історії збірної.
Разом зі збірною — півфіналіст Кубка Азії 2011 року, на якому був капітаном і забив один гол.
Всього за збірну Узбекистану провів 60 матчів, у яких забив 34 м'ячі[5].