Пожарский и Минин понимали, что они должны подойти к Москве раньше Ходкевича. Ополченцы устремились к столице. 24 июля 1612 г. к Москве вышли передовые разъезды Второго ополчения. 3 августа отряд в 400 всадников построил у Петровских ворот столицы острожек и засел в нем. 12 августа 700 конников укрепились у Тверских ворот Земляного города (так называлась внешняя линия бревенчатых укреплений на валу и посад, примыкавший к ней). Ополченцы перехватывали гонцов, которых посылал к Ходкевичу польский гарнизон, находившийся в Московском Кремле. В ночь с 19 на 20 августа к Москве подошли главные силы Второго ополчения - примерно 15 тыс. человек. Они остановились на востоке от Кремля - у впадения Яузы в Москву-реку, и на западе и севере - от Никитских ворот Земляного города до Алексеевской башни у Москвы-реки. В Замоскворечье продолжали стоять остатки Первого ополчения - около 3-4 тыс. казаков Дмитрия Трубецкого.
Ходкевич наступал по Смоленской дороге. Утром 22 августа 1612 г. он появился у Москвы. Крылатые гусары с хода пытались пробиться в столицу со стороны Новодевичьего монастыря, но были отброшены ополченцами Пожарского. Тогда гетман ввел в бой все свои полки. Через Чертопольские ворота поляки пробились к Арбату. К вечеру дворянские сотни Второго ополчения заставили их покинуть город. На следующий день, 23 августа, Ходкевич решил нанести удар по Замоскворечью, надеясь, что натянутые отношения Пожарского и Трубецкого не позволят русским действовать сообща. Но как только поляки двинулись на казаков Трубецкого, Пожарский переправил в Замоскворечье часть ополченцев.
Решающее сражение произошло 24 августа. Ходкевич атаковал и Пожарского, и Трубецкого, польский гарнизон из Кремля ударил русским в тыл. Ополченцы откатились за броды на Москве-реке, а казаки Трубецкого, бросив свой острожек в Замоскворечье, ускакали к Новодевичьему монастырю. В острожек поляки стали заводить продовольственные подводы.
В этот напряженный момент Авраамий Палицын явился к казакам и стал их убеждать не бросать поле битвы. Вдохновленные им казаки, не дожидаясь команды Трубецкого, напали на острожек, захватили его и большую часть польского обоза.
Приближалась ночь. Исход боя оставался неясен. Вдруг Кузьма Минин решился сам возглавить атаку. Перейдя реку, он с тремя сотнями конных дворян ударил во фланг полякам, которые совершенно не ожидали этого. Польские ряды смешались. Пожарский бросил в бой стрельцов. И со всех сторон на помощь неслись казаки Трубецкого.
В ходе борьбы с Ходкевичем произошло стихийное объединение сил Второго ополчения с казаками Трубецкого. Это решило исход борьбы. Ходкевич отступил к Донскому монастырю, а 25 августа, не возобновляя сражения, вышел на Смоленскую дорогу и пошел в Литву.
Попавший в осаду польский гарнизон в Кремле и Китай-городе начал голодать. Силы Второго ополчения подготовили и успешно провели штурм китайгородских укреплений и освободили Китай-город от сил поляков 3 ноября 1612 года. Однако отряд Струся оставался в Кремле, несмотря на голод. 5 ноября, на следующий день после почитания иконы Казанской Божьей Матери поляки, засевшие в Кремле сдались на милость Второго ополчения. Из трехтысячного гарнизона Кремля не выжил не один поляк, кроме их командира ё Н. Струся.
Освобождение Москвы от польских интервентов силами Второго Ополчения стало символом духовной стойкости и воинской славы русского народа. Самоотверженность, с которой вся Россия поднялась на борьбу с врагами Отечества, продемонстрировала всему миру силу русского духа и русского единства.