Замысел Полоцкой операции состоял в том, чтобы ударами по сходящимся направлениям главных сил 1-го Прибалтийского фронта с северо-востока и юго-запада окружить и уничтожить полоцкую группировку противника, одновременно частью сил развивать наступление на запад в общем направлении Ушачи, Глубокое, Козяны. Главный удар наносили войска левого фланга (83-й и 100-й стрелковые корпуса) 4-й ударной армии в направлении Котляны, Поздняки, Полоцк. В последующем часть сил армии должна была наступать на Дохнары, правый фланг 6-й гвардейской армии (22-й гвардейский стрелковый корпус) — на Полоцк с востока, а ее 23-й гвардейский стрелковый корпус — на Полоцк с юго-востока, с последующим обходом его с юго-запада. 2-й гвардейский стрелковый корпус 6-й гвардейской армии совместно с войсками 43-й армии и подвижной группой фронта (1-й танковый корпус) получили задачу развивать наступление на запад в общем направлении на Козяны. Авиационную поддержку войск осуществляла 3-я воздушная армия генерал-лейтенанта авиации Н. Ф. Папивина.
29 июня войска 3-го Белорусского и 1-го Прибалтийского фронтов без оперативной паузы приступили к выполнению поставленных задач. Части 1-го танкового корпуса, выйдя на оперативный простор, с ходу овладели узлом дорог Ветрино. Это обеспечило частям 23-го гвардейского стрелкового корпуса форсирование р. Ушачи в районе Заскорки. Утром 30 июня 150-я танковая бригада 1-го танкового корпуса внезапно для противника ворвалась на улицы Дисны. Он, не сумев оказать организованное сопротивление, поспешно отступил на правый берег Западной Двины. Вслед за ним на захваченном пароме переправилась часть сил 1-го танкового корпуса, занявшая на правом берегу реки небольшой плацдарм. Остальные соединения корпуса, форсировав с ходу р. Мнюта, ударом с тыла содействовали стрелковым дивизиям в захвате важных узлов сопротивления в Лужках и Плиссе. Главные силы 3-го Белорусского фронта вышли к Березине. Соединения 5-й гвардейской танковой армии и передовые отряды 11-й гвардейской и 31-й армий подошли к Борисову.
1 июля Василевский вместе с Черняховским выехал на Березину, чтобы на месте разобраться, как идет наступление войск 5-й гвардейской танковой армии. Беглый осмотр местности между реками Бобр и Березина свидетельствовал о тяжелых боях, которые пришлось выдержать здесь танковой армии с 5-й танковой дивизией противника. Мосты у Борисова были разрушены. Но некоторые уже восстанавливались и позволяли переправлять даже тяжелые танки. Однако командующий армией Ротмистров рассчитывал закончить переправу лишь в ночь на 2 июля и к исходу дня выйти к Острошицкому городку (18 км северо-восточнее Минска). Маршал Василевский отменил решение Ротмистрова, приказав ему к исходу дня 2 июля освободить Минск. Генерал Черняховский тут же отдал распоряжение о пропуске через мост танков и самоходных орудий танковой армии вне всякой очереди.
В три часа утра 2 июля 4-я гвардейская танковая бригада подполковника O.A. Лосика, входившая в состав 2-го гвардейского танкового корпуса генерал-майора танковых войск A.C. Бурдейного, опередив главные силы отступающего противника более чем на 100 км, ворвалась на улицы Минска. Соединения 5-й гвардейской танковой армии в результате стремительного продвижения вышли на северную окраину города. Вскоре на помощь им подошли стрелковые части 11-й гвардейской и 31-й армий, которые начали отбивать у противника квартал за кварталом. В ночь на 3 июля войска 1-го и 3-го Белорусских фронтов завершили окружение основных сил 4-й армии и отдельных соединений 9-й армии общей численностью в 105 тыс. человек. К исходу дня Минск был полностью освобожден. 4 июля соединения 1-го Прибалтийского фронта, обеспечивавшие проведение Минской операции с севера, заняли Полоцк. Ликвидация окруженной минской группировки противника была осуществлена в период с 5 по 12 июля войсками 33-й армии, частью сил 49-й и 50-й армий 2-го Белорусского фронта. В плен было захвачено 57,6 тыс. человек, которые 17 июля под конвоем советских солдат прошли по улицам Москвы.
В день освобождения Полоцка Сталин обсудил с маршалами Жуковым и Василевским дальнейшие задачи 1-го, 2-го Прибалтийских, 1, 2 и 3-го Белорусских фронтов. Так, войскам 1-го Прибалтийского фронта директивой № 220 130 предписывалось нанести главный удар в общем направлении на Свенцяны, Каунас, овладеть не позже 10–12 июля рубежом Двинск, Новые Свенцяны, Подбродзе. В дальнейшем, прочно обеспечивая себя с севера, наступать на Каунас и частью сил на Паневежис, Шяуляй. Войскам 3-го Белорусского фронта директивой № 220 126 предписывалось развивать наступление, нанося главный удар в общем направлении на Молодечно, Вильно (Вильнюс). Ближайшая задача — не позже 10–12 июля овладеть Вильно и Лидой. В дальнейшем выйти на р. Неман и захватить плацдармы на его западном берегу.