Octubre de 1944. Alemania comienza a estar acorralada. Tras el desembarco de Normandía, los aliados progresan desde el Oeste. El ejército rojo presiona desde el Este y avanza impasible luchando a través de tierras húngaras, rumbo a la capital Budapest. Miklós Horthy, regente húngaro, a sabiendas de que su alianza con Alemania tiene todas las de perder en el conflicto, trata de negociar desesperadamente un armisticio con la URSS para salir de la guerra, cosa que consigue el 15 de Octubre, como anuncia en la radio nacional.
Sin embargo, los planes de Horthy habían llegado a los oídos de Hitler desde hacía tiempo, y temeroso de perder a su aliado, ordena la Operación Panzerfaust para invadir Hungría y obligar a Horthy a que abdique. El 15 de Octubre las tropas alemanas llegan a Budapest y un día después Horthy es obligado transferir sus poderes a Ferenc Szallási, miembro del partido de la cruz flechada y totalmente afín a los nazis.
El 20 de Octubre se produce la captura de Debrecen por las fuerzas de la URSS, y sin perder tiempo, estas se encaminan hacia la capital. El 29 de Octubre, el Ejército Rojo, junto a tropas rumanas, comienza el acecho a Budapest, de importancia vital para Hitler, por su proximidad a Viena, y también para Stalin, que quería ofrecer resultados al resto de potencias aliadas en la próxima conferencia de Yalta. Defenderían la ciudad tropas nazis alemanas y húngaras. La ocupación de Budapest por la URSS fue una de las batallas más sangrientas de la Segunda Guerra Mundial, comparable a la batalla de Stalingrado.
En torno a 1 millón de hombres de las fuerzas aliadas soviético-rumanas rodean Budapest para aislarla del resto del territorio e impedir que llegasen refuerzos húngaros o alemanes, cosa que consiguen tras muchas bajas debido a la gran seguridad que rodeaba la capital. Esto encerró en Budapest a 37.000 soldados húngaros, 33.000 soldados alemanes y 800.000 civiles. Hitler declara la ciudad como Fortaleza, y ordena defenderla hasta que caiga el último hombre.
Para el 3 de Noviembre las tropas soviéticas controlan el aeropuerto de Ferihegy, vital para cortar la llegada de apoyo aéreo a las fuerzas del eje, y el 7 de Noviembre soviéticos y rumanos comienzan a atacar los suburbios del este de la capital, en Pest. El 28 de Diciembre la URSS anuncia por megafonía que ofrece una capitulación (rendición de la ciudad sitiada), ofreciendo un trato humanitario a aquellos que se rindan. Los emisarios enviados a negociar, sin embargo, son asesinados por los nazis.
El ejército soviético avanza a gran velocidad por las amplias avenidas de Pest, mientras que soldados húngaros y alemanes tratan de frenarlos en la medida de lo posible y replegarse hacia Buda, desde cuyas colinas confían en poder frenar al Ejército Rojo aprovechando las posiciones elevadas.
Los nazis lanzaron 3 operaciones, denominadas Konrad I, II y III hacia el norte y sur de la capital y hacia Ferihegy para intentar asegurar el aeropuerto. Todas fallaron.
El ejército alemán aprovisionaba a sus tropas mediante aterrizajes dificultosos en algunas avenidas de Buda bajo fuego soviético, y a través de barcas en el Danubio los días de niebla hasta que se congeló debido al invierno. Aún así esto era insuficiente y comenzó una gran inanición, salvada en parte gracias a la caballería, que fue el sustento de los soldados. Además el frío comenzaba a ser muy severo.
Los soviéticos trataron de avanzar por las alcantarillas, donde se libraban grandes batallas, incluso consiguieron llegar a Buda y secuestrar a un oficial alemán durante una incursión, sin embargo los nazis, ayudados por los húngaros que conocían mejor la ciudad y les guiaban por las redes de alcantarillado, tenían ventaja.
El 17 de Enero, Hitler ordena la retirada de sus tropas en Pest hacia Buda y vuela los puentes sobre el Danubio. Los alemanes intentaron abrir un pasillo por el sur, amenazando los suministros soviéticos, sin embargo fallaron en el intento. La suerte de Buda estaba echada, y se aproximaba la batalla final.
La conquista de la Isla Margarita (Margít sziget) fue muy despiadada, ya que tenía vital importancia como campo de aterrizaje de los suministros lanzados con paracaídas. Los alemanes, además, desde las colinas de Buda podían lanzar fuertes ataques de artillería y contener a los soviéticos, a diferencia de la llana Pest.
La toma de la colina de Szent Gellért, el 11 de Febrero, fue la más dificultosa, y solo se logró tras varios intentos y mediante un triple ataque simultáneo desde varios frentes. Desde aquí los soviéticos bombardearon al resto de tropas alemanas, que se mantenían en un área de 2 kilómetros cuadrados sufriendo una severa desnutrición y enfermedades.
Las tropas de eje se negaban a rendirse, por miedo a las terribles torturas por parte del ejército rojo que habían escuchado. Tan solo algunos húngaros se cambiaron al bando soviético. Pese a la negativa de Hitler, 28.000 soldados alemanes trataron de huir avanzando en tres grandes grupos junto a miles de civiles, familias enteras que empujaban coches de bebé a través del hielo y la nieve. Sin embargo, los soviéticos les esperaban estratégicamente situados en las inmediaciones de la plaza Széll Kálmán. Tan solo parte del primer grupo logró sorprender a los soviéticos y escapar hacia las colinas boscosas del noroeste de Budapest, desde donde huyeron a Viena. El resto del primer grupo, y la mayoría del segundo y tercero fueron masacrados por el fuego soviético. A pesar de ello, entre 5.000 y 10.000 personas lograron escapar, entre ellos unos 600 soldados alemanes.
Los restantes soldados se rindieron el 13 de Febrero. Hubo más de 50.000 soldados alemanes muertos, otros 80.000 en el bando soviético, y 40.000 civiles (muchos de ellos judíos asesinados). El ejército soviético anunció la captura de 180.000 luchadores del bando germano-húngaro, si bien es cierto que para inflar la cifra los soviéticos hicieron prisioneros a una gran cantidad de civiles que reunieron tras la batalla. El 80% de los edificios de Budapest estaban dañados y los 5 puentes del Danubio en la capital, destruidos.
Tras la batalla, las eufóricas tropas soviéticas iniciaron una orgía de violencia sobre la restante población civil que no había muerto de hambre, enfermedades o disparos durante el sitio de Budapest. Esto incluyó saqueos, asesinatos aleatorias y violaciones por parte de los soldados soviéticos a casi todas las mujeres, niñas y ancianas, muchas de ellas secuestradas, llevadas a improvisados cuarteles y violadas o asesinadas. Incluso cometieron estas acciones contra personal diplomático neutral, como en la embajada de Suecia.