11 ноября войска 2-го Украинского фронта вновь перешли в наступление, продолжавшееся 16 дней. За это время они, тесня противника в междуречье Тисы и Дуная, продвинулись в северо-западном направлении до 65 км и подошли к внешнему обводу обороны Будапешта. Однако рассечь и разгромить будапештскую группировку восточнее города не удалось. Задача в целом оказалась невыполненной, хотя в полосе 7-й гвардейской армии Малиновский бросил в бой 481 танк и самоходную установку. С одной стороны, помешали упорное сопротивление противника, осенняя распутица, несвоевременный подвоз боеприпасов из-за сильно растянутых коммуникаций, а также усталость войск, непрерывно наступавших более трех месяцев. С другой — расточительное отношение к людям на протяжении всей войны, хотя и компенсировалось регулярно поступающими пополнениями, но в ходе проведения длительных операций неизбежно приводило к снижению качества войск. Имея неизменно-переменный состав в 700–750 тысяч человек, 2-й Украинский фронт за три месяца потерял убитыми и ранеными около 200 тысяч офицеров и солдат.
В директиве командующего фронтом указывалось, что командиры подвижных соединений не стремились вырваться компактной массой вперед, а действовали в одну линию с пехотой, ввязываясь в затяжные бои; танки использовались распыленно, мелкими группами; командиры плохо организовывали управление огнем; штабы недостаточно контролировали действия войск; часто командиры соединений, имея трех-четырехкратное превосходство, приостанавливали наступление для отражения контратак небольших групп противника, то есть делали именно то, чего противник добивался.
Обстановка, сложившаяся к 25 ноября, заставила Малиновского просить у Ставки разрешения остановить активные действия трех левофланговых армий фронта, чтобы подготовить их к дальнейшему наступлению с 4–5 декабря.
Новый замысел заключался в овладении Будапештом путем обхода его с севера 7-й гвардейской, 6-й гвардейской танковой армиями и группой Плиева, а с юго-запада — главными силами 46-й армии и 2-м гвардейским мехкорпусом при обеспечении ударной группировки справа наступлением 53-й армии генерала Г.Ф. Тарасова в северном направлении. В полосе армии генерала Шумилова на участке прорыва была создана плотность 260 артиллерийских стволов на 1 км и сосредоточено 510 единиц бронетехники. Кроме того, армии Тарасова придавалось 160 танков и самоходных установок.
Действия южной ударной группировки были менее обеспечены. При этом ей предстояло сначала форсировать на глазах противника такую серьезную водную преграду, как Дунай. Между тем в 80 км к югу от армии Шлемина войска 3-го Украинского фронта уже находились на западном берегу Дуная. Удар отсюда на север гораздо быстрее и меньшими жертвами мог вывести советские войска к западу от Будапешта. Однако мысль о привлечении к операции армий Толбухина пришла «опосля».
Немецкое командование, учитывая угрозу, нависшую в связи с захватом войсками 3-го Украинского фронта крупнейшего плацдарма за Дунаем, а также необходимость установить единство всех соединений на территории Венгрии передало из группы армий «Ф» в группу армий «Юг» 2-ю танковую армию. В течение ноября противник систематически усиливал свою группировку на будапештском направлении. Кроме того, намерения Малиновского не остались секретом для генерала Фриснера: на участок 3-й венгерской армии он дополнительно перебросил три танковые дивизии, одну бригаду штурмовых орудий и 503-й тяжелый танковый батальон.
Всего 2-й Украинский фронт имел 528 тысяч человек, 9014 орудий и минометов, 565 танков и САУ, 950 самолетов. Немцы могли им противопоставить 127 тысяч солдат и офицеров,1830 орудий и минометов, 411 танков и штурмовых орудий, 450 самолетов.
5 декабря советское наступление возобновилось. В течение пяти дней войска левого крыла и центра фронта безуспешно пытались окружить и уничтожить группировку противника путем обхода ее с севера и юго-запада. Главная группировка танковым тараном сумела пробиться к большому изгибу Дуная севернее Будапешта, отбросив основные силы 6-й армии в район севернее реки Ипель, но вторая половина «клещей» — 46-я армия и 2-й гвардейский мехкорпус генерала К.В. Свиридова — свою задачу не выполнила. Уже при ночном форсировании Дуная дивизии Шлемина понесли большие потери в личном составе от артиллерийского огня противника. Почти все инженерные средства были уничтожены, в результате переправа механизированного корпуса заняла трое суток. Армия сумела захватить небольшой плацдарм, но из-за недостатка сил выйти к Будапешту с юго-запада не смогла, споткнувшись на «линии Маргарита».
Таким образом, и третья попытка овладеть Будапештом силами одного фронта успеха не имела. Вместе с тем войска 2-го Украинского фронта завершили освобождение междуречья Тисы и Дуная и отрезали будапештской группировке пути отхода на север.
57-я армия 3-го Украинского фронта к 9 декабря вышла в район к югу от озера Балатон. Со второй половины ноября на правом берегу Дуная начала боевые действия прибывшая в состав фронта 4-я гвардейская армия, войска которой соединились с 46-й армией 2-го Украинского фронта. Создалась реальная возможность удара советских войск в тыл будапештской группировки противника.
Согласно директиве Ставки от 12 декабря окружение и разгром будапештской группировки теперь планировалось осуществить силами 2-го и 3-го Украинских фронтов. Действовавшая на западном берегу Дуная 46-я армия передавалась в распоряжение Толбухина.
К началу декабрьского наступления 2-й Украинский фронт (4-я румынская, 40-я и 27-я армии) имел 39 стрелковых дивизий, 2 танковых, 2 механизированных и 2 кавалерийских корпуса, 2 укрепленных района и 14 румынских дивизий. Войска 3-го Украинского фронта (46-я, 4-я гвардейская и 57-я армии) располагали 31 стрелковой дивизией, 1 бригадой морской пехоты, 1 укрепленным районом, 1 танковым, 2 механизированными и 1 кавалерийским корпусами. В составе фронта действовала 1-я болгарская армия. Наземные войска поддерживались авиацией 5-й и 17-й воздушных армий и кораблями Дунайской военной флотилии. Южнее 3-го Украинского фронта действовала 3-я югославская армия.
Таким образом, граница фронтов устанавливалась по Дунаю, ликвидацию врага в Пеште должны были осуществить войска Малиновского, а в Буде — армии Толбухина.
Силам двух советских фронтов противостояли немецкие войска группы армий «Юг» и часть сил группы армий «Ф» — всего 51 немецкая и венгерская дивизии и 2 бригады, в том числе 9 танковых и 4 моторизованные дивизии, 1 моторизованная и 1 кавалерийская бригада и значительные силы авиации 4-го воздушного флота.
Маршал Малиновский получил задачу ударной группировкой левого крыла нанести удар из района Шаги в общем направлении на Солдины, выйти к Дунаю на участке Несмей, Эстергом и не допустить отхода будапештской группировки на северо-запад. Одновременно фронт должен был частью сил наступать на Будапешт с востока. Маршалу Толбухину ставилась задача нанести удар из района озера Веленце на север, выйти к берегу Дуная в районе Эстергом, Несмей и соединиться с войсками 2-го Украинского фронта, отрезав тем самым пути отхода будапештской группировке на запад. Из района Бичке часть сил фронта должна была наступать на Будапешт и овладеть им во взаимодействии с войсками Малиновского. Создание внешнего фронта в 50— 60 км к западу и юго-западу от Будапешта также возлагалось на войска 3-го Украинского фронта.
Начавшееся 20 декабря наступление развивалось успешно. Соединения 2-го Украинского фронта к исходу дня продвинулись северо-западнее Будапешта на 15–32 км. Немецко-венгерские войска понесли большие потери, но, подтянув свежие силы, стремились остановить дальнейшее продвижение советских войск. 21 декабря они тремя танковыми дивизиями при поддержке пехоты нанесли контрудары с юга и с севера на Шаги. Им удалось потеснить правофланговые соединения 7-й гвардейской армии и к исходу 22 декабря выйти в тыл танковой армии Кравченко. Оценив обстановку, маршал Малиновский приказал 6-й гвардейской танковой армии, удерживая район Левице, главные силы повернуть на юг, нанести удар вдоль восточного берега реки Грон и во взаимодействии с 7-й гвардейской армией окружить и уничтожить всю вражескую группировку в междуречье Ипель и Грон. Танкисты при активной поддержке авиации успешно выполнили эту задачу. 26 декабря танковые бригады прорвались к Дунаю севернее Эстергома и соединились с войсками Толбухина. 7-я гвардейская армия в конце декабря вышла к реке Грон и южнее Солдины захватила небольшой плацдарм на противоположном берегу. Войска левого крыла к концу декабря подошли к Будапешту с востока. На правом крыле 27-я армия Трофименко и 53-я армия Манагарова ликвидировали выступ в районе гор Матра.
Войска 3-го Украинского фронта прорвали главную полосу обороны и в первый день наступления продвинулись на 5–7 км. Противник предпринимал сильные контратаки. На второй день они стали еще более яростными, особенно упорными были бои в районе Секешфехервара. Чтобы сломить сопротивление врага, командующий фронтом приказал ввести в сражение вторые эшелоны корпусов, а 21 декабря — армейские подвижные группы: 2-й гвардейский и 7-й механизированный корпуса, а также 18-й танковый корпус, составлявший фронтовую подвижную группу. Однако прорвать вражескую оборону на всю глубину в установленные сроки не удалось. Стрелковые дивизии не имели танков непосредственной поддержки пехоты, а в большинстве случаев — и вторых эшелонов.