Замыслом советской Ставки предполагалось нанести войсками двух фронтов мощные встречные удары под основание выступа и соединиться в районе Шпола — Звенигородка. Генерал Ватутин смог выделить для проведения операции 6 стрелковых дивизий 40-й и 27-й армий и два корпуса 6-й танковой армии, которые получили задачу прорвать оборону на 15-километровом участке Тыновка — Кошевое. План 2-го Украинского фронта предусматривал прорыв в районе Вербовка — Красносилка на 19-километровом участке смежными флангами 4-й гвардейской и 53-й армий и развитие наступления на Шполу, Звенигородку. В полосе 53-й армии планировался ввод танковой армии Ротмистрова, перебрасываемой из-под Кировограда (18, 20, 29-й танковые корпуса), и Донского кавалерийского корпуса.
Чтобы перегруппировать 5-ю гвардейскую танковую армию с левого крыла фронта на правую, в четырехдневный срок была построена рокадная дорога протяженностью 135 км. Разминирование дорог для рокады проводилось одним инженерным батальоном и инженерным батальоном миноискателей. Так вот, оказывается, «миноискателями» работали 160 собак. История службы четвероногих «друзей человека» на этой войне, как и история наших инженерных войск вообще и различных бригад спецназначения в частности, до сих пор не написана. За годы войны в войска было направлено более 60 тысяч собак; в Красной Армии имелось четыре отдельных батальона собак связи, 6000 собак-минеров, обезвредивших 4 миллиона мин, на счету противотанковых собак числится более 300 уничтоженных боевых машин.
Для сковывания сил противника и отвлечения их от направления главного удара намечалось за день до начала операции предпринять наступление силами 5-й и 7-й гвардейских армий. Правее ударной группировки предполагалось наступление 52-й армии. Таким образом, Конев выделял 35 стрелковых дивизий, 3 танковых, 1 кавалерийский корпус.
Поддержка войск фронтов возлагалась на авиацию 2-й и 5-й воздушных армий, а также на 10-й истребительный авиационный корпус ПВО страны. К началу операции за счет внутрифронтовых перегруппировок на направлениях главных ударов фронтов было создано превосходство над противником по численности войск в 3–4, артиллерии в 3–6, танкам и САУ в 5–10 раз. По авиации силы сторон были примерно равными.
Операция готовилась и осуществлялась в сложных условиях рано начавшихся на Украине оттепелей и весенней распутицы. Разбитые и раскисшие дороги затрудняли маневр войск и подвоз материальных средств. Остро стоял вопрос о накоплении боеприпасов. Ненастная погода и пришедшие в негодность грунтовые аэродромы ограничивали возможность использования авиации. Кроме того, на подготовку операции отводились весьма сжатые сроки — 5–7 суток.
Наступление войск 2-го Украинского фронта началось 24 января действиями усиленных передовых батальонов. Поддержанные артиллерией и небольшими группами штурмовиков, они внезапной атакой сломили сопротивление 389-й гессенской пехотной дивизии на переднем крае и к исходу дня на 16-километровом фронте продвинулись на глубину до 6 км.
«В такой обстановке, — отмечает генерал армии А.И. Радзиевский, — было бы целесообразным решительно развить успех, достигнутый передовыми батальонами, вводом в действие главных сил ударной группировки фронта. Однако командование фронта не пошло на изменение первоначального плана операции и не ввело в этот день главных сил. В результате противнику было предоставлено время для переброски своих сил к участку прорыва с других направлений».
С утра 25 января после десятиминутного огневого налета были введены в сражение главные силы 4-й гвардейской и 53-й армий. Они сразу встретили упорное сопротивление противника. Эффективность подавления его артиллерийским огнем оказалась недостаточной. Не действовала из-за плохой погоды и авиация фронта.
Требовалось немедленное наращивание усилий наступающих войск. Однако армии и корпуса, построенные в один эшелон, не имели для этого сил и средств, и в 14 часов Конев на участке шириной всего 6 км ввел в сражение 5-ю гвардейскую танковую армию, имевшую 236 танков и самоходных установок. Тесно взаимодействуя с пехотой генерала Галанина, танкисты Ротмистрова завершили прорыв тактической зоны обороны и продвинулись к исходу дня на глубину до 18 км.
На второй день наступление армий замедлилось, так как им пришлось отразить ряд контратак спешно переброшенных к участку частей 14-й танковой и 57-й пехотной дивизий противника. 27 января немцы нанесли удары с юга 3-й, 11-й и 14-й танковыми дивизиями. Одновременно с севера ударила пехотная группировка, усиленная танками из дивизии «Викинг». После ожесточенных боев противник ликвидировал брешь в своей обороне, два корпуса 5-й гвардейской танковой армии оказались отрезанными от главных сил.
Конев, оценив сложившуюся обстановку, принял смелое решение: 29-му танковому корпусу генерал-майора И.Ф. Кириченко занять оборону фронтом на юг, 20-му продолжать развивать наступление на Шполу, Звенигородку, где соединиться с войсками 1-го Украинского фронта; 18-му танковому корпусу и конникам Селиванова войти в сражение соответственно в полосах 53-й и 4-й гвардейской армий, совместно с ними разгромить противостоящую группировку противника и развивать наступление вслед за корпусами первого эшелона танковой армии.
20-й танковый корпус в ночном бою овладел городом Шпола, а в 13 часов 28 января захватил Звенигородку и встретился с подошедшим к городу передовым отрядом 6-й танковой армии.
Войска 4-й гвардейской и 53-й армий во взаимодействии с 18-м танковым и 5-м гвардейским кавалерийским корпусами с 28 по 30 января пробили заслон противника в горловине прорыва и устремились в направлении Шполы, одновременно образуя внутренний и внешний фронт окружения.
Правда, казаки понесли при прорыве большие потери, постоянно норовя атаковать танки в конном строю: «Донцы неслись в конном строю с саблями наголо. В проходах между эскадронами мчались готовые к бою пулеметные тачанки. На станинах орудий, на подводах с боеприпасами и даже на рундуках полевых кухонь лежали наготове смельчаки с гранатами, чтобы в любую секунду ринуться на врага. А с правого и левого флангов, лесополос и оврагов фашисты посылали на казачью лавину мириады трассирующих пуль. Небо над головой расцвело необыкновенным фейерверком. Падали скошенные пулями кони. Падали люди».
Как признает Конев: «Надо сказать, что повозились мы с этим корпусом тогда немало».
Но и на немцев донцы произвели неизгладимое впечатление. Бывший командир 47-го танкового корпуса генерал фон Форман вспоминает: «Невзирая на потери — и я подчеркиваю, совершенно невзирая на потери, — массы русских около полудня устремились на запад, обходя немецкие танки, которые стреляли в них из всего, чем располагали. Это была ошеломляющая картина, потрясающая драма. Другого сравнения я не нахожу — прорвало плотину, громадный поток хлынул на равнину мимо наших танков, окруженных немногочисленными гренадерами, как мимо скал, возвышающихся в бурлящем потоке. Мы поразились еще больше, когда чуть позже кавалерийские соединения трех советских дивизий сомкнутым строем помчались сквозь наш заградительный огонь. Ничего подобного я давно не видел — это казалось нереальным».
1-й Украинский фронт перешел в наступление 26 января. Бои на участке прорыва носили упорный характер. Особенно сильное огневое сопротивление встретили войска 40-й и 6-й танковой армий, которая применялась в первом эшелоне. К исходу дня они продвинулись только на 2–5 км. При этом потери 6-й танковой армии составили 59 танков и САУ. Соединениям 27-й армии генерал-лейтенанта С.Г. Трофименко удалось продвинуться за день на 8–12 км. Трем советским армиям противостояли три немецкие пехотные дивизии.
На второй день войска 1-го Украинского фронта, используя успех 27-й армии, продвинулись до 10 км на правом фланге и до 25 км на левом фланге участка прорыва. Тактическая оборона противника оказалась прорванной на всем фронте. 28 января высланный вперед передовой отряд 6-й танковой армии к 13 часам достиг Звенигородки, где соединился с 20-м танковым корпусом генерала И.Г. Лазарева.
Таким образом, на четвертый день операции танковые армии 1-го и 2-го Украинских фронтов перерезали все пути, связывавшие корсунь-шевченковскую группировку противника с основными силами.
В кольце оказались управления 11-го и 42-го армейских корпусов, 4 пехотные, 1 танковая дивизии, корпусная группа «Б», бригада СС «Валлония», 3 дивизиона штурмовых орудий и прорвавшийся с юга прямо в «котел» полк 14-й танковой дивизии, отдельные подразделения других частей. Численность окруженной группировки, по советским данным, достигала 80 000 человек, на ее вооружении имелось 1600 орудий и минометов, до 230 танков и штурмовых орудий. По мнению немецких авторов, в окружении оказались около 56 000 солдат и офицеров.