Утром 9 (21) ноября российские войска, совершив ночной марш, внезапно атаковали город. Егерский полк, при поддержке батарейной и конной роты, атаковал центр. В результате боя редуты несколько раз переходили из рук в руки, и в конце концов вечером российские войска овладели ими. Это удалось только при помощи резерва. Ретраншемент остался в руках неприятеля, а часть его сил была отрезана от реки и укрылась в лесу севернее Борисова.
Подошедший к Борисову арьергард Домбровского атаковал правый фланг Ламберта, а подразделения, находившиеся в лесу, начали наступать слева. Удар был отбит с помощью гусар и драгун, противник был отброшен. После этого Ламберт разместил в левом редуте орудия и под прикрытием их огня атаковал предмостное укрепление. Опрокинутые на всех пунктах войска Домбровского поспешно отступили от города, преследуемые драгунами и гусарами. В ходе этого боя Ламберт был ранен пулей в ногу, но остался в строю.
Вечером к Борисову прибыл пехотный корпус генерала Лонжерона, а после полудня следующего дня – главные силы 3-й Западной армии (20 000 пехоты, 11 000 кавалерии, 178 орудий). В тот же день казаки окружили и взяли в плен польский отряд (300 человек).
По польским данным, Домбровский потерял у Борисова 1 850 человек убитыми и ранеными и 6 орудий. По данным журнала авангарда 3-й Западной армии, противник потерял 2 000 человек убитыми и 2 500 пленными (в том числе свыше 40 офицеров), а также 8 пушек и 2 знамени. При этом потери российских войск составили 1 500–2 000 пехотинцев. В официальном рапорте Чичагов указал, что его войска захватили 2 000 пленных, 7 орудий и одно знамя. Свои потери он оценил в 900 человек.
После взятия Борисова российскими войсками армия Наполеона оказалась в критической ситуации. В частности, с севера на нее надвигался Витгенштейн, с востока – главные силы Кутузова, а путь отступления был перерезан армией Чичагова, которая заняла оборонительную линию. Полковник Гриуа вспоминал: «Во время наших переходов от Толочина до Борисова к нам постоянно доходили самые зловещие слухи, которые оставляли мало надежды, что нам удастся ускользнуть: Минск со своими огромными складами провианта был в руках неприятеля; Борисов был взят, его мост разрушен, и русская армия занимала берега Березины; итак, приходилось приступом брать переправу через эту реку, мы сожгли последний понтон перед оставлением Орши! Какое ужасное будущее, и в три или четыре дня все должно было решиться! Я приписываю только ослаблению наших умственных способностей, вследствие продолжительных страданий, ту странность, что несчастья, которым мы подвергались и которые при всяких других обстоятельствах заняли бы всецело наши мысли, разбудили бы всю предусмотрительность, теперь далеко не производили такого действия на меня и на моих товарищей. Я чувствовал себя почти чуждым всему, что происходило, и неприятельские пушки, грохотавшие кругом нас, почти не выводили нас из апатии».
Итальянский офицер Ложье позже писал: «Известие о потере нами борисовского моста было настоящим громовым ударом, тем более, что Наполеон, считая утрату этого моста делом совершенно невероятным, приказал, уходя из Орши, сжечь две находившиеся там понтонные повозки, чтобы везших их лошадей назначить для перевозки артиллерии».
Когда Наполеон получил известие о потере Борисова, то приказал следовавшему в авангарде армейскому корпусу маршала Удино (около 10 000 человек) немедленно отбить город. На случай, если российские войска уничтожат мост через Березину, император приказал Удино отыскать другое место для переправы. Одновременно Виктор получил задачу блокировать действия Витгенштейна.
11 (23) ноября авангард 3-й Западной армии под командованием генерала Палена потерпел поражение под Лошницей и был опрокинут. Получив известие о приближении неприятеля, Чичагов отдал приказ отступить на правый берег и не смог организовать оборону. Неприятель попытался захватить мост через Березину, но был отброшен артиллерийским огнем и опрокинут штыковой атакой русского пехотного батальона, после чего ближайшая к правому берегу часть моста была сожжена. Только на рассвете следующего дня к силам Чичагова присоединились посланные на фуражировку конные отряды, а также егеря Палена.
В результате в Борисове неприятель захватил всех оставленных в нем раненых российской армии и больных, часть полковых обозов (в том числе личный фургон Чичагова и его канцелярию). Потеря города и отступление 3-й Западной армии на правый берег Березины значительно затруднили исполнение поставленных задач. Хотя при этом противник все-таки не сумел сохранить мост через Березину, но Наполеон предусмотрел подобное развитие событий. По его приказу Удино предпринял демонстрацию южнее от Борисова. Приняв эти действия за подготовку к переправе, Чичагов перебросил туда главные силы своей армии. Воспользовавшись этим, Наполеон начал организовывать переправу через реку Березину к северу от города.