В первую колонну генерала Бороздина вошли 7-й и 8-й пехотные корпуса и 2-я кирасирская дивизия, во вторую колонну Лаврова — 3-й и 5-й пехотные корпуса, 1-я кирасирская дивизия и Тульский казачий полк. Для прикрытия марша с севера было выделено 20 эскадронов конницы Голицына. Еще раньше к Малоярославцу из авангарда Милорадовича был направлен корпус Платова с задачей выдвинуться на Боровскую дорогу и совместно с корпусом Дохтурова прикрыть город с севера.
Переход войск Дохтурова совершался в крайне тяжелых условиях: дожди размыли дороги, испортили переправы. К вечеру 23 октября корпус прибыл к Спасскому, где соединился с казаками Платова. Здесь русские войска неожиданно задержались: жители села, узнав о приближении французов, уничтожили плотину на реке Протве. Пришлось наводить два моста на плотах, на это ушло несколько часов. К Малоярославцу Дохтуров прибыл лишь в два часа ночи и обнаружил, что город уже занят неприятельским авангардом...
В голове французской армии шел корпус Богарне. Последний выдвинул вперед дивизию Дельзона, однако он направил в город только два батальона. Войска Дохтурова оседлали новую Калужскую дорогу и, установив наличие у неприятеля сравнительно малых сил, на рассвете 24 октября атаковали французов. Два русских егерских полка выбили противника. Однако Дельзон тоже усилил свои части, потеснил русских и вошел в город. Дохтуров послал на подмогу еще два егерских полка. Русские егеря снова выбили французов из города. Остальная пехота Дохтурова заняла высоты, перекрыв дорогу на Калугу, в то время как 1-й кавалерийский корпус и отряд Дорохова закрыли движение по дороге на Спасское. Артиллерия была сведена в две крупные батареи и расположилась впереди корпусов и в боевых порядках пехоты.
Тогда Дельзон бросил в бой всю свою дивизию. Вскоре он был убит, и командование принял генерал Гильемино, который приказал захватить холм, господствующий над западной частью города, и овладеть стоявшими там церковью и зданиями. В 11 часов борьба за город вспыхнула с новой силой: вице-король ввел в бой подошедшую дивизию Брусье. Французы действовали быстро и энергично. Им удалось вновь овладеть городом и даже атаковать стоящий на высотах 6-й корпус. Но натиск наполеоновской пехоты без поддержки артиллерийского огня был отбит огнем и штыковой контратакой. Русские в четвертый раз захватили город.
Французы с ходу ввели в бой подошедшие свежие дивизии Пино и гвардейскую; Богарне восстановил положение и стал угрожать корпусу Дохтурова. Русские части с трудом сдерживали врага. К 14 часам к Малоярославцу прибыл 7-й корпус Раевского (10 500 человек при 72 орудиях) и занял позицию между 6-м пехотным и 1-м кавалерийским корпусами. С его прибытием русские войска насчитывали 22 000 солдат и 144 орудия. Получив перевес в силах, генерал Дохтуров снова атаковал и через час в пятый раз взял Малоярославец. Город был уже сильно разрушен и горел.
Впрочем, и русские недолго удерживали захваченную позицию; к месту боя спешил 1-й корпус Даву. Теперь французы имели более 50 000 человек при 296 орудиях, они снова вытеснили русских из города и атаковали их на высотах. Но и Даву продолжал действовать, главным образом силами пехоты, так как большая часть французской артиллерии застряла на переправах и на северной окраине Малоярославца и не смогла поддержать атаку. Подпустив атакующих на короткую дистанцию, русские встретили их картечным огнем в упор, затем штыковой контратакой опрокинули французов и взяли южную часть города. Завязались кровопролитные уличные бои.
Но подошли главные силы Наполеона, еще две французские дивизии, перейдя реку по наведенному мосту, ворвались в Малоярославец. Сильно поредевшие, уставшие дивизии Дохтурова и Раевского отступили и закрепились на высотах южнее города.
Во второй половине дня к Малоярославцу подступили главные силы Кутузова. Обойдя город с юга, он занял новую дорогу и прочно закрыл ее, преградив путь на Калугу. Теперь бой перерастал в сражение главных сил. Кутузов, принявший руководство, приказал заменить измотанный 6-й корпус и силами 7-го и 8-го атаковал город снова, который в восьмой раз переходил из рук в руки.
Близилась ночь, бой начал затихать, и к 23 часам руины Малоярославца остались в руках французов, а русские прочно закрепились на южных высотах. Ночью русские войска перешли за Немцовский овраг и заняли настолько выгодную позицию, что Наполеон не решился атаковать их. 25 октября оба полководца стояли друг против друга. Кутузов был готов продолжать сражение и весь день был на виду у противника. Стремлению Наполеона выйти к Калуге русский командующий противопоставил твердое решение провести генеральное сражение: «Без коего я, ни под каким видом в Калугу его [Наполеона] — не пущу».
Наполеон отлично понимал, что в случае поражения катастрофа французской армии будет неминуемой. У него теперь было под рукой 70 000 солдат против 90 000 русских с их преимуществом в коннице и артиллерии. В Городно император собрал военный совет. Все маршалы убеждали его прекратить борьбу за город. «Разве не видели мы поля последней битвы, — заявил маршал Бессьер, — не заметили того неистовства, с которым русские ополченцы, едва вооруженные и обмундированные, шли на верную смерть». Выслушав мнения маршалов, Наполеон, однако, не принял окончательного решения до рекогносцировки.
Во время ее проведения Наполеон чуть было не попал в плен. 25 октября император поехал верхом к Малоярослвцу. С ним была небольшая свита: маршал Бертье, генерал Рапп, несколько офицеров. Вдруг показался, летя в карьер прямо на Наполеона и его свиту, отряд казаков с копьями наперевес. С криками «Ура!» они налетели на кучку всадников. Эти их возгласы и спасли Наполеона от неминуемой смерти или плена: его свита издали приняла казаков за эскадрон французской кавалерии, и только крик казаков вывел ее из заблуждения. Человек 25 офицеров свиты сгрудились вокруг императора. Один казак налетел уже на Раппа и с размаху пронзил копьем лошадь генерала, но тут подоспели два французских эскадрона, казаки повернули обратно и скрылись в лесу. Тем не менее Наполеон казался вполне спокойным. Он проехал в Малоярославец. Город был в развалинах, на улицах валялись обугленные трупы нескольких тысяч людей. Это были жители Малоярославца, русские и французские раненые, живьем сгоревшие при общем пожаре города. В сражении, длившемся восемнадцать часов, французы потеряли 5000 человек, русские — около 3000.
Убедившись, что шансов разбить русских мало, Наполеон отдал приказ французской армии сворачивать обратно на старую Калужскую дорогу, откуда она только что пришла. Теперь ее маршрут лежал через Боровск и Можайск к Смоленску. «Этот дьявол Кутузов не получит от меня новой битвы». В первый раз в своей жизни Наполеон отказался от ждавшего его генерального сражения. В первый раз за русскую кампанию он повернулся спиной к русской армии, решился из положения преследующего занять положение преследуемого. План обходного движения на Калугу был сорван Кутузовым. В результате битвы у Малоярославца стратегическая инициатива перешла к русской армии, сражение явилось поворотным моментом в кампании 1812 года. Началось отступление «Великой армии»...
Вечером этого переломного дня Наполеон вызвал доктора Ювана и приказал ему изготовить флакон с ядом. Налет казаков был учтен — впредь император не расставался с флаконом: попасть в плен живым он не собирался.
Сражение под Красным. 16—18 ноября
Французская армия отступала к Смоленску. Напрасны были все усилия, сделанные для овладения Москвой, бесполезны все угрозы сжечь Петербург. В огне московского пожара сгорел ореол непобедимости наполеоновских войск. После неудачной попытки прорваться к русским базам в Калуге и Туле, им пришлось поспешно отходить на запад. 27 октября началось отступление из Боровска на Верею, Можайск, Дорогобуж, Смоленск.