Перед матчем в Петербурге обстановка между клубами, которые известны взаимной нелюбовью, была накалена до предела. Эмоции зашкаливали и на поле, где от главного арбитра Сергея Иванова ждали такого судейства, к которому бы "Спартак" не мог придраться. В первом тайме Иванов показал три жёлтые карточки зенитовцам и две спартаковцам, а также дважды прибегнул к помощи VAR (система видеопомощи арбитрам). На 24-й минуте он назначил пенальти в ворота "Спартака" после того, как Илья Гапонов ударил по ногам Сердара Азмуна в штрафной – 11-метровый реализовал Артём Дзюба. А через 20 минут отменил гол "красно-белых", поскольку Самуэль Жиго оказался в офсайде.

В компенсированное к первому тайму время Александр Соболев забил чистый мяч москвичей. Наставник "Спартака" Доменико Тедеско начал иронизировать, предлагая судьям проверить и этот гол, а "Зенит" практически сразу снова вышел вперёд после того, как Далер Кузяев замкнул прострел Малкома – 2:1.

У петербуржцев ещё был шанс за мгновение до перерыва забить ещё один гол, также хозяева могли отличиться во втором тайме, как и “Спартак”, но счёт на табло так и не изменился.

“Зенит” вышел в финал, куда чуть ранее пробились подмосковные “Химки”, обыгравшие со счётом 3:1 екатеринбургский “Урал”. Финал Кубка России состоится 25 июля на "Екатеринбург Арене". Команда Сергея Семака, которая выиграла чемпионат России, близка к тому, чтобы оформить золотой дубль.