В результате Дебреценской наступательной операции (первой операции Красной Армии на территории Венгрии) войска 2-го Украинского фронта под командованием Маршала Советского Союза Р.Я. Малиновского вышли на рубеж Чоп, Сольнок, Байя. Им противостояла немецкая группа армий «Юг» (8-я и 6-я полевые, 2-я танковая немецкие и 3-я венгерская армии), которой командовал генерал Г. Фриснер. К участию в Будапештской операции привлекался также и 3-й Украинский фронт Маршала Советского Союза Ф.И. Толбухина, который завершил Белградскую операцию.
Немецко-венгерское командование на подступах к Будапешту создало глубокоэшелонированную оборону, состоявшую из трех оборонительных рубежей, которые упирались своими флангами в реку Дунай севернее и южнее города. Будапештский район обороны являлся составной частью оборонительной линии «Маргарита». Сам город был превращен в крепость.
К началу операции юго-восточные подступы к Будапешту обороняли войска 3-й венгерской армии, усиленной немецкими танковой и моторизованной дивизиями. Здесь на 250-километровом фронте действовало 11 дивизий противника против 36 советских.
Замысел Ставки ВГК на операцию заключался в нанесении главного удара на Будапешт с юго-востока и востока. Такое решение предопределялось тем, что это направление являлось наиболее удобным для наступления советских войск и прикрывалось относительно слабыми силами противника.
Командующий войсками 2-го Украинского фронта решил нанести главный удар силами 46-й армии, 2-го и 4-го гвардейских механизированных корпусов юго-восточнее Будапешта и овладеть им.
7-я гвардейская армия должна была нанести вспомогательный удар. Остальные силы фронта получили задачу сковать противостоявшие войска противника и не допустить их переброски в район Будапешта.
Наступление началось 29 октября. На левом крыле 2-го Украинского фронта 46-я армия в первый же день прорвала оборону и, введя механизированные корпуса, начала стремительное продвижение.
2 ноября мехкорпуса находились уже в 15 км юго-восточнее Будапешта, но войти с ходу в город не смогли. Немецкое командование быстро перебросило к Будапешту три танковые и одну моторизованную дивизии, которые смогли остановить продвижение советских войск. В центре и на правом крыле фронта советские войска встретили серьезное сопротивление противника при форсировании реки Тисы.
3 ноября на непосредственных подступах к Будапешту разгорелись ожесточенные бои. Ставка ВГК вынуждена была указать командующему 2-м Украинским фронтом, что дальнейшие попытки вести наступление на Будапешт на узком участке ограниченными силами могут привести к неоправданным потерям и поставить действовавшие на этом направлении войска под фланговый удар противника с северо-востока. С целью усиления войск центра фронта сюда началась перегруппировка 6-й гвардейской танковой армии генерал-лейтенанта А.Г. Кравченко и конно-механизированной группы генерал-лейтенанта И.А. Плиева.
Войска фронта 11 ноября возобновили наступление. Оно продолжалось 16 дней. Однако рассечь и разгромить будапештскую группировку восточнее города не удалось. Вторая попытка овладеть Будапештом также оказалась неудачной. Противник сумел создать на непосредственных подступах к Будапешту плотную оборону, перебросив на будапештское направление 12 дивизий из полосы 4-го Украинского фронта, наступление которого в конце октября - первой половине ноября развивалось чрезвычайно медленно.
5 декабря 1944 года 2-й Украинский фронт возобновил наступление. В течение восьми дней войска центра и левого крыла пытались окружить противника путем обхода с севера и юго-запада. При этом подвижные соединения фронта достигли пограничной с Чехословакией реки Ипель, совместно с 7-й гвардейской армией генерал-полковника М.С. Шумилова вышли на левый берег Дуная севернее Будапешта и преодолели первую и вторую полосы внешнего обвода обороны Будапешта.
Одновременно 46-я армия форсировала Дунай к югу от города и захватила плацдарм. Но из-за недостатка сил и ожесточенного сопротивления противника выйти к венгерской столице с юго-запада не смогла. Таким образом, и третья попытка овладеть Будапештом успеха не имела.
Германское командование принимало все меры к тому, чтобы не допустить захвата Будапешта советскими войсками и вывода из войны последнего своего союзника. За счет резерва верховного командования и перегруппировки оно увеличило состав группы армий «Юг» с 38 до 51 дивизии и бригады.
20 декабря советские войска возобновили наступление. Оно развивалось успешно. К исходу 26 декабря войска 2-го и 3-го Украинских фронтов соединились северо-западнее Будапешта, завершив окружение 188-тысячной группировки врага (около 10 дивизий). Создав внешний фронт окружения и отбросив противника к западу от Будапешта, советские войска все плотнее сжимали кольцо вокруг города. Противник, блокированный в лесах северо-западнее Будапешта, к концу декабря был уничтожен.
29 декабря командование обоих фронтов во избежание дальнейшего кровопролития и разрушения Будапешта предъявило окруженным войскам ультиматум о капитуляции. Однако вражеское командование не только отвергло его, но и распорядилось убить парламентеров капитанов М. Штейнмеца и И. Остапенко, поправ международное право о неприкосновенности парламентеров.
Советские войска приступили к ликвидации окруженного противника. В течение января 1945 года войскам 2-го и 3-го Украинских фронтов пришлось вести тяжелые бои по отражению контрударов немецких войск, имевших целью деблокировать свою будапештскую группировку и восстановить линию фронта по Дунаю. Германское командование, сосредоточив близ Будапешта почти половину всех танковых и моторизованных дивизий, имевшихся на советско-германском фронте, со 2 по 26 января нанесло три сильных контрудара по войскам 3-го Украинского фронта, но в ходе тяжелых боев они были отражены.
Непосредственно в городе бои вела специально созданная будапештская группа войск, в состав которой входили четыре стрелковых корпуса и до 18 января - румынский армейский корпус.
Бои за освобождение восточной части города (Пешта) шли с 27 декабря по 18 января, а западной его части (Буды) - с 20 января по 13 февраля.
В боях за освобождение Буды принимало участие немало венгерских солдат и офицеров, которые добровольно перешли на сторону советских войск. Согласно воспоминаниям генерала С.М. Штеменко, у этих венгерских солдат-добровольцев «слова не расходились с делом». Именно из их числа, по неполным данным, около 600 человек пали смертью храбрых.
Положение окруженного противника становилось все хуже и хуже. Если вначале ежедневно 40-45 самолетов доставляли для него необходимые грузы, то с 20 января снабжение было сорвано советской авиацией. 13 февраля вражеская группировка в Будапеште, потеряв до 50 тысяч убитыми и 138 тысяч пленными, прекратила свое существование.
На этом Будапештская наступательная операция завершилась. В ходе ее советские войска продвинулись от 120 до 240 км, освободили около 45 процентов территории Венгрии (а с учетом Дебреценской операции - 74 процента) и создали условия для дальнейшего наступления в Чехословакии и на венском направлении.
Немецкое командование было вынуждено перебросить на южный фланг советско-германского фронта большое количество соединений, особенно танковых и моторизованных, которые были крайне необходимы ему для отражения наступления Красной Армии на варшавско-берлинском направлении в январе-феврале 1945 года.
Дорогой ценой были достигнуты эти результаты. Потери советских войск составили 320 тысяч человек, из которых 80 тысяч - безвозвратные.
Наступательные действия советских войск осенью и зимой 1944–1945 годов на юго-западном направлении привели к коренному изменению всей политической обстановки на Балканах. К ранее выведенным из войны Румынии и Болгарии прибавилось еще одно государство - Венгрия.
Советское правительство высоко оценило действия войск в Будапештской операции. Президиум Верховного Совета СССР 9.06.1945 учредил медаль «За взятие Будапешта», которой были награждены 350 тысяч человек.
79 соединений и частей получили почетное наименование – Будапештские.