Матч начался с забитого гола. «Спартак» открыл счет уже на 4-й минуте. Бакаев разогнался на левом полуфланге, после чего мощно и точно пробил в нижний правый угол. Акинфеев к мячу не дотянулся.
«Спартак» 1-0 ЦСКА (4, Бакаев).
На 13-й минуте «Спартак» удвоил преимущество в счете. Понсе получил мяч в штрафной площади ЦСКА, вырвался из-под опеки троих защитников «армейцев», после чего точно пробил низом в левый угол – Акинфеев прыгнул вправо.
«Спартак» 2-0 ЦСКА (13, Понсе).
На 17-й минуте ЦСКА сократил отставание. Дивеев получил мяч в штрафной площади «Спартака», развернулся и пробил с отскоком от газона. Максименко мяч не поймал.
«Спартак» 2-1 ЦСКА (17, Дивеев).
На 23-й минуте защитники ЦСКА ошиблись на своей половине поля. Игроки «Спартака» перехватили мяч. Дело дошло до удара головой, но Акинфеев поймал мяч.
Через минуту Айртона вывели на встречу с Акинфеевым, но голкипер ЦСКА оказался первым на мяче и ликвидировал угрозу ценой собственной микротравмы.
На 28-й минуте Влашич опасно пробил головой в дальний левый угол, но не попал по воротам.
На 34-й минуте арбитр показал первую желтую карточку. Предупреждение получил Кутепов.
Арбитр добавил 3 минуты к основному времени 1-го тайма. В это время ЦСКА сравнял счет. Жиго пытался выбить мяч после подачи соперника, но лишь скинул его под удар Ахметову, который мощно с лета пробил в левый угол. Максименко к мячу не дотянулся.
«Спартак» 2-2 ЦСКА (45+1, Ахметов).
На 3-й добавленной минуте Фернандес сфолил на Айртоне, не дав тому разогнать атаку. «Спартак» заработал штрафной, но не смог воспользоваться стандартом. На этом первый тайм закончился.
Второй тайм начался с замены со стороны «Спартака». На поле вместо Бакаева вышел Тиль.
На 56-й минуте команды провели по одной опасной атаке. В обоих случаях защитники в последний момент ликвидировали угрозу возле своих ворот.
На 68-й минуте Понсе получил желтую карточку за то, что «влетел» в Акинфеева с выставленным локтем.
На 72-й минуте Влашич мощно пробил из-за пределов штрафной площади «Спартака», но мяч прилетел прямо в руки Максименко.
На 74-й минуте «Спартак» провел вторую замену. На поле вместо Соболева вышел Ларссон.
На 78-й минуте ЦСКА провел первую замену. На поле вместо Ахметова вышел Обляков.
На 80-й минуте Обляков получил желтую карточку.
Через 2 минуты Дзагоев заменил Кучаева.
На 85-й минуте Жиго едва не забил головой в свои ворота. Мяч пролетел очень близко к правой штанге.
На 88-й минуте Рассказов опасно пробил с линии штрафной площади – мяч «просвистел» возле левой штанги.
На 90-й минуте «Спартак» провел последнюю замену. Вместо Рассказова на поле вышел Ещенко.
Арбитр добавил 3 минуты к основному времени 2-го тайма. В это время произошел спорный эпизод с игрой рукой у защитника ЦСКА в собственной штрафной. Однако арбитр не дал пенальти. Команды ушли на дополнительное время при счете 2:2.
На 94-й минуте ЦСКА провел последнюю замену. На поле вместо Чалова вышел Шкурин.
На 97-й минуте Карпов получил желтую карточку.
На 100-й минуте Шкурин пробил с разворота в штангу.
На 103-й минуте Понсе получил вторую желтую карточку и покинул поле. После этого «Спартак» остался вдесятером.
На 107-й минуте «Спартак» вышел вперед. Ларссон принял мяч на левом полуфланге после длинной передачи Максименко. Форвард «красно-белых» ворвался в штрафную площадь ЦСКА и пробил точно в правый угол. Акинфеев чуть-чуть не дотянулся к мячу.
«Спартак» 3-2 ЦСКА (107, Ларссон).
Сразу после этого ЦСКА провел одну замену, разрешенную правилами овертайма. На поле вместо Карпова вышел Бийол.
На 115-й минуте желтую карточку получил Набабкин.
На 119-й минуте Мельгарехо заменил Айртона.
Арбитр добавил 3 минуты к основному времени второго овертайма. В это время Тиль мог забить очередной гол «Спартака», но Акинфеев спас «армейцев». За оставшееся время гости не смогли сравнять счет. «Спартак» в меньшинстве обыграл ЦСКА со счетом 3-2 и вышел в полуфинал Кубка России.