Миф битвы за Будапешт заключается в утверждении о том, что столицу Венгрии обороняли отборные немецкие войска и Гитлер требовал удерживать город любой ценой.
2 октября 1944 года войска 2-го Украинского фронта начали Дебреценскую операцию. В результате был захвачен плацдарм на западном берегу Тисы южнее Сольнока. В районе Орадя была разгромлена немецкая 76-я пехотная дивизия. 10 октября немецкое командование нанесло контрудар и отрезало 6-ю танковую армию. Началось встречное танковое сражение в районе Дебрецена между этой армией и двумя немецкими танковыми дивизиями. Оно продолжалось до 14 октября, когда советским танкистам удалось прорвать кольцо окружения. 20 октября 6-я гвардейская танковая армия и 33-й стрелковый корпус овладели Дебреценом.
В конце сентября Хорти направил в Москву начальника венгерской жандармерии фельдмаршал-лейтенанта Ласло Фараго, бывшего военного атташе в СССР, хорошо говорившего по-русски. 11 октября им было парафировано соглашение о перемирии.
15 октября в Будапеште было передано по радио заявление Хорти, в котором говорилось, что, поскольку Германия уже проиграла войну, Венгрии необходимо позаботиться о своих интересах. Хорти сообщил, что он намерен обратиться к СССР, США и Англии с просьбой сообщить ему условия перемирия. Он утверждал, что, отступая из восточных районов страны, немецкие войска «грабили и опустошали наши земли, оставляя после себя развалины и пепелища». 16 октября германские спецподразделения при содействии некоторых венгерских частей арестовали в Будапеште регента Хорти и вывезли его в Германию, где он находился под домашним арестом до конца войны. Регентом был назначен Ференц Салаши, лидер пронацистской венгерской партии «Скрещенные стрелы». После ареста Хорти командующий 1-й венгерской армией генерал-полковник Бела Миклош 16 октября вместе со своим штабом перешел на сторону Красной Армии. Его примеру последовало около 6 тыс. венгерских солдат и офицеров. Перед этим Миклош издал обращение к венгерской армии, где объявил о заключении перемирия и призвал венгерских солдат к борьбе против немцев. Однако германскому командованию и новым венгерским властям удалось удержать на своей стороне основную часть венгерской армии.
23 октября два немецких армейских и один танковый корпуса нанесли контрудар и, соединившись в районе Надькалло – Уйфехерто, перерезали коммуникации конно-механизированной группы генерала Плиева. 26 октября она вынуждена была оставить Ньиредьхазу, при этом 30-я кавдивизия и 3-я танковая бригада понесли большие потери. Значительная часть группы Плиева прорвалась к своим, но пришлось бросить танки и тяжелое вооружение. После этого армейская группа Велера в составе 8-й немецкой и 1-й венгерской армии смогла отойти на западный берег Тисы.
28 октября Дебреценская операция завершилась. Советские войска взяли 42 тыс. пленных, главным образом венгров. Командующий 6-й немецкой армией Максимилиан Фреттер-Пико писал в донесении: «Отрицательно сказывается на состоянии войск дурной пример некоторых венгерских частей».
Перед началом сражения за Будапешт германо-венгерские войска группы армий «Юг» генерала Ганса Фриснера насчитывали 190 тыс. человек. Противостоявшие им войска 2-го Украинского фронта маршала Малиновского и 46-я армия 3-го Украинского фронта маршала Толбухина имели 720 тыс. человек. Советские войска превосходили противника по пехоте в 3,7 раза, по танкам – вдвое, по артиллерии – в 4,5 раза, по самолетам – в 2,5 раза. Войска 2-го Украинского фронта 30 октября перешли в наступление с целью выхода к Дунаю и захвата Будапешта. Оборона венгерских войск оказалась прорвана еще при проведении разведки боем. 2 ноября советские войска вышли с юга на ближние подступы к Будапешту, но ворваться в город с ходу не смогли. Только к 26 ноября советские войска вышли к внешнему оборонительному обводу Будапешта. 5 декабря войска 2-го Украинского фронта вышли к Дунаю севернее и северо-западнее Будапешта, отрезав будапештской группировке пути отхода на север. Тем временем войска 3-го Украинского фронта силами 57-й, 46-й и 4-й гвардейской армий и 1-й болгарской армии форсировали Дунай и вышли на позиции северо-восточнее озера Балатон. 20 декабря войска двух фронтов прорвали оборону противника севернее и юго-западнее Будапешта. 24 декабря Будапешт был полностью окружен. 29 декабря советское командование направило окруженному гарнизону ультиматум о капитуляции, который был отклонен.