В день приезда Троцкого новым командующим 7-й красной армией был назначен бывший генерал-лейтенант Генерального штаба Д. Н. Надежный, перед которым была поставлена задача — через пять дней нанести контрудар по белым. Новый командарм 17 октября получил директиву, подписанную главнокомандующим РККА С. А. Каменевым и его начальником штаба, бывшим генерал-майором Генерального штаба П. П. Лебедевым. В ней отмечалось, что наступление белых на Петроград не нашло поддержки со стороны Эстонии и Латвии, чем следовало воспользоваться незамедлительно. В директиве говорилось: «…Считаю необходимым использовать эту обстановку для решительного и окончательного поражения армии Юденича. Для этого сосредотачиваю к Петрограду ударную группу в составе 3-й бригады 21-й стрелковой дивизии из Тулы и бригады курсантов из Москвы». Далее сообщалось об укреплении 7-й армии двумя батальонами ВЧК из Москвы и другими частями, в результате чего ударная группа достигнет 7000 штыков и 470 сабель.
Командарм Д. Н. Надежный из этих частей, а также трёх стрелковых полков, прибывших с Северного и Восточного фронтов, сформировал под командованием бывшего полковника Генерального штаба С. Д. Харламова ударную группу в 8000 штыков в районе Колпина. Она должна была нанести удар во фланг Северо-Западной армии, открытый безрассудными действиями генерала Ветренко. Ударная группа превосходила численно и артиллерией 1-й стрелковый корпус генерала графа Палена, состоявший из трёх слабых пехотных дивизий, подошедших к предместьям Петрограда.
На побережье Финского залива, где бездействовала 1-я эстонская дивизия, а английская эскадра ушла в Ригу, командарм Д. Н. Надежный собрал ударную группировку в составе 6-й стрелковой дивизии под командованием бывшего подполковника Генерального штаба В. В. Любимова и пятитысячного отряда балтийских моряков. Группировку поддерживали крупнокалиберные орудия прибрежных фортов, так и не захваченных эстонцами. Этот ударный кулак был собран в районе Петергофа и нацелен на Кипень и Ропшу, во фланг и тыл 5-й дивизии светлейшего князя Ливена.
Между этими ударными группами, сосредоточенными на флангах Северо-Западной армии, в центре, в районе Царское Село — Пулково, командарм Надежный собрал войсковую группу в составе 2-й стрелковой дивизии, петроградских и финских курсантов, частей, переброшенных с Карельского фронта, и рабочих батальонов из Петрограда, Колпина, Ижоры. Эта войсковая группа под командованием бывшего генерал-майора Генерального штаба С. И. Одинцова должна была насмерть удерживать фронт в районе Пулковских высот.
Кроме того, главком С. С. Каменев приказал командующему Западным фронтом В. М. Гиттису силами 15-й армии поддержать действия 7-й армии в направлении Струги Белые, Гдов, Луга, тем самым нанести удар во фланг и тыл Северо-Западной армии. Эта группа войск красных численностью до 16 000 штыков и сабель при 200 орудиях в несколько раз превосходила 2-й стрелковый корпус генерала Арсеньева.
Всего за пять дней советское руководство сумело довести 7-ю армию до 40 000 штыков и сабель при 453 орудиях, 708 пулеметах, 6 бронепоездах, 9 броневиках и 10 самолётах, создав многократное превосходство над Северо-Западной армией генерала Юденича. И это не всё… Троцкий организовал такой военно-мозговой центр из бывших генералов и старших офицеров царского Генерального штаба, перешедших на сторону советской власти, который и по опыту, и военной эрудиции, и стратегическому мышлению оказался выше командных кадров армии генерала Юденича.
Контрнаступление Красной армии началось 21 октября. В этот же день белых выбили из Ям-Ижор. После двухсуточных кровопролитных боёв 23 октября 3-я дивизия генерала Ветренко оставила Павловск. Вскоре 2-я дивизия генерала Ярославцева вынуждена была оставить часть Царского Села. При огневой поддержке двух бронепоездов красные захватили станцию Александровскую. Мощной атакой частей 6-й стрелковой дивизии и отрядов моряков красные 21 октября отбросили эстонцев на побережье за форт «Красная Горка», в тот же день заняли Ропшу, а 23 октября, развивая наступление на Русскую-Капорскую и Красное Село, вышли в тыл 5-й дивизии светлейшего князя Ливена. Белые в упорных боях пытались ликвидировать прорыв в тылу, но, потеряв до половины личного состава, вернулись на прежние позиции и окопались. Но удержать оборону уже не смогли. Красные атаковали мощно и 25 октября взяли Русскую-Капорскую, а ночью — Красное Село.