כתוצאה מכך כותרו בעיר 33,000 חיילים גרמנים ו-37,000 חיילים הונגרים, ובנוסף לכך נלכדו בעיר כ-800,000 תושבים. היטלר סירב לאשר נסיגה מהעיר, והכריז עליה כעיר מבצר, תוך שהוא ממנה את קרל פפר-וילדנברוך למפקד העיר.
מאידך, סטלין רצה להתפאר בכיבוש העיר בועידת ילטה, ובשל כך הורה לרודיון מלינובסקי לכבוש את העיר ללא דיחוי.
במהלך ליל ה-28 בדצמבר 1944 פנו הרוסים לגרמנים הנצורים על ידי קשר רדיו ורמקולים, והודיעו להם על משא ומתן עבור כניעת העיר. הסובייטים הבטיחו לספק תנאי כניעה אנושיים, ולא להתעלל בשבויים הגרמנים וההונגרים. בנוסף הבטיחו שישלחו קבוצת שליחים עם דגלים לבנים, וללא נשק בידיהם.
למחרת, הופיעו כצפוי שתי קבוצות של שליחים. הקבוצה הראשונה מהחזית האוקראינית השלישית, הגיעה בשעה 10:00 בבוקר, ונלקחה לבית המטה של גנרל וילדנברוך. המאמץ נכשל, ווילדנברוך שלל את תנאי הכניעה, ושלח אותם בחזרה לעבר הקווים הרוסיים. בדרכם לעבר כוחותיהם, פתחו לפתע הגרמנים באש, והרגו את קפטן י. א אוסטפנקו. סגן נ. פ. אורלוב וסמל יה. ט. גורבטיוק קפצו במהירות לתוך תעלה וניצלו בנס. כתוצאה מאש גרמנית כבדה, לא הצליחו הסובייטים להחזיר את הגופה של אוסטפנקו עד ליל ה-29 בדצמבר.
הקבוצה השנייה מהחזית האוקראינית השנייה הגיעה בשעה 11:00 בבוקר, אולם הגרמנים פתחו עליהם באש, וכתוצאה מכך נהרגו קפטן מיקלוש שטיינמץ ושני פקודיו.
ניסיון הפריצה הגרמני הראשון.
המתקפה הסובייטית החלה בפרברים המזרחיים של העיר והתקדמה דרך פשט, תוך שהכוחות מתקדמים לאורך השדרות המרכזיות של הרובע כדי להאיץ את התקדמותם. המגינים הגרמנים וההונגרים ניסו לבלום את התקדמות הכוחות הסובייטיים, אולם בסופו של דבר נסוגו מפשט המישורית, בתקווה לנצל את האופי ההררי של בודה, ולהסתייע במצודה שלה.
היטלר היה נחוש למנוע את נפילת בודפשט לידי הסובייטים, ולכן הורה לשלוח תגבורות חזקות לקבוצת ארמיות דרום בהונגריה, מגזרות אחרות של החזית המזרחית ומעתודות הפיקוד הגרמני העליון. ב-1 בינואר 1945 פתחה הארמייה השישית, תחת פיקוד הרמן באלק, במבצע קונרד, במטרה לפרוץ את טבעת הכיתור הסובייטית סביב בודפשט. הכוח התוקף, שכלל את קורפוס הפאנצר אס אס הרביעי מתוגבר בשתי דיוויזיות רגלים, מנה כ-260 כלי רכב משוריינים וכ-70 אלף חיילים. הוא נע אל העיר מכיוון צפון-מערב, השיג התקדמות ראשונית נאה, אך נבלם לבסוף במרחק כ-28 ק"מ מהעיר. ב-7 בינואר ערכו הכוחות הגרמניים מתקפה נוספת ("מבצע קונרד 2") במטרה לפרוץ את טבעת הכיתור ולכבוש את שדה התעופה של בודפשט, על מנת לאפשר לתספק את הכוחות הנצורים בעיר דרך האוויר. אולם הכוח התוקף נבלם שוב לאחר הצלחה ראשונית. הפיקוד הסובייטי הזרים כוחות עתודה לאזור ועד ה-12 בחודש נסוגו הגרמנים לעמדות המוצא שלהם.
הקרבות בעיר.
בינתיים הלוחמה בשטחים הבנויים בבודפשט התעצמה, והמחסור באספקה בעקבות אובדן שדה התעופה על יד העיר, השפיע מאוד על לחימת החיילים הגרמנים וההונגרים. עד 9 בינואר 1945 הצליחו החיילים הגרמנים להשתמש בשדרות המרכזיות של העיר, כמו גם בפארק ליד טירת בודה, כאזורי נחיתה לדאונים, שנחתו תחת אש ארטילרית בלתי פוסקת של הצבא האדום. כמו כן, לפני שקפאו מי הדנובה, היה ניתן לשלוח אספקה על דוברות, בחסות החשיכה והערפל.
אף על פי כן, המחסור במזון גבר, והחיילים חיפשו בעצמם מזון, וחלקם אפילו אכלו את הסוסים ששימשו אותם. כמו כן, הטמפרטורות הקיצוניות השפיעו גם הם על החיילים הגרמנים וההונגרים.
מאידך, הכוחות הסובייטים נגררו ללחימה בשטח בנוי, ומצאו את עצמם באותו מצב שהיו חיילי הוורמאכט בקרב סטלינגרד. הלוחמים הרוסים לא הצליחו להתקדם עקב פגיעות צלפים, שהיו פזורים בכל פינה. שני הצדדים ניסו להתקדם דרך תעלות הביוב, ואף שם פרצו קרבות קשים.
באמצע ינואר נכבש האי צ'פל, שבו היו מפעלים שהפיקו פאנצרפאוסטים ופצצות. בינתיים, בפשט מצב כוחות הציר התדרדר, וגבר החשש מכיתור על ידי הכוחות הסובייטיים המתקדמים.
ב-17 בינואר 1945 התיר היטלר לסגת לעברה השני של הדנובה, על מנת להגן על בודה. כל חמשת הגשרים שהיו פרושים על הנהר היו פקוקים במכוניות, עקב פינוי החיילים והאזרחים. ב-18 בינואר הרסו חיילים גרמנים את הגשרים, ובכלל זה את גשר השלשלאות המפורסם שנבנה בשנת 1849, חרף מחאות קצינים הונגרים.
ניסיון הפריצה הגרמני השני.
ב-18 בינואר 1945 פתחו קורפוס הפאנצר אס אס הרביעי וקורפוס הפאנצר השלישי במאמץ נוסף לפרוץ את המצור על בודפשט (מבצע קונרד 3). המתקפה נפתחה בגזרה, שמצפון לאגם בלטון (מדרום-מערב לבודפשט), ותוך יומיים הצליחו הכוחות התוקפים להגיע עד לנהר הדנובה, ולפצל את כוחות החזית האוקראינית השלישית בגדה המערבית של הנהר. לאחר ההגעה לדנובה פנה הכוח התוקף צפונה, והתקדם במקביל לנהר לכיוון בודפשט. עד ה-26 בינואר הגיעו הכוח הגרמניים למרחק כ-25 ק"מ מטבעת המצור הסובייטית הפנימית סביב העיר.
הפיקוד הסובייטי העליון הופתע מעוצמת מתקפת הנגד הגרמנית, והודאג מהאיום החמור שהיא יצרה על תוכניותיו האסטרטגיות בחזית הדרומית. שני קורפוסים שוגרו בחופזה לתגבר את הכוחות הסובייטיים מדרום לבודפשט, כדי לבלום את המתקפה הגרמנית החדשה. על אף שכוח החילוץ הגרמני הגיע למרחק פחות מ-20 ק"מ מהעיר, הוא לא היו מסוגל להמשיך בהתקדמותו, עקב האבדות שספג, תשישות ומחסור באספקה. עד 25 בינואר נותרו לכוח החילוץ רק כ-50 כלי רכב משוריינים מבצעיים מתוך 306, עימם פתח את המתקפה. מהכוחות הנצורים בעיר ביקשו רשות מהיטלר לנטוש אותה ולחבור לכוח החילוץ, אולם האחרון סירב בכל תוקף. הארמיות ה-26 וה-27 של החזית האוקראינית השלישית פתחו במתקפת נגד על האגפים של הבליטה הפגיעה בקו החזית, שיצרה התקדמות כוחות הפאנצר הגרמניים, ותוך זמן קצר אילצה אותם לסגת לנקודת המוצא שלהם.
ב-28 בינואר 1945 הכוחות הגרמניים בבודפשט נסוגו לגבעת הטירה בבודפשט, למעט כוח שהחזיק בסקשפהרוואר.
הקרב על בודה.
בניגוד לפשט שהייתה מישורית, בודה הייתה בנויה על גבעות, מה שאפשר לגרמנים ולהונגרים לפגוע קשות בסובייטים, על ידי ארטילריה וצלפים. מצודת גבעת גלרט שהוחזקה על ידי כמה פלוגות מהוואפן אס אס, החזיקה מעמד כנגד כמה התקפות סובייטיות, והדפה אותם בהצלחה.
הלחימה על האי מרגיט, באמצע הדנובה, הייתה חסרת רחמים במיוחד. האי שעדיין היה מחובר לשאר חלקי העיר, שימש כאזור הצנחה למשלוחי הסיוע. האי הותקף על ידי דיוויזיית הרובאים של המשמר ה-25 הסובייטית, שספגה אבדות כבדות במהלך הקרב.
ב-11 בפברואר 1945 נפלה מצודת גבעת גלרט לאחר שישה שבועות של לחימה, כאשר פתחו הסובייטים במתקפה כבדה משלושה כיוונים בעת ובעונה אחת. כיבוש הנקודה השולטת, איפשר לצופי הארטילריה לכוון את אש הארטילריה הסובייטית באופן מדויק ולשלוט על העיר כולה, והיא החלה להפגיז את שרידי כוחות הציר, אשר בשלב זה נדחקו לתא שטח, שגודלו פחות משני קילומטרים רבועים, תוך שהם סובלים מתת תזונה וממחלות. למרות זאת, כוחות הציר סירבו להיכנע והגנו על כל רחוב ועל כל בית. בשלב זה, קבוצת חיילים הונגרים שערקו, ונודעו בשם "רגימנט המתנדבים של בודה", עברו להילחם לצד הצבא האדום.
לאחר לכידת תחנת הרכבת הדרומית, בתום קרב קשה שארך יומיים, התקדמו הכוחות הסובייטיים לעבר גבעת הטירה בבודפשט. ב-10 בפברואר לאחר לחימה עזה, תפסו כוחות נחתים סובייטיים מאחז בגבעת הטירה, ופיצלו לשניים את הכיס, בו החזיקו כוחות הציר.
בריחה וכניעה.
על אף המצב הנואש אסר עדיין היטלר לנטוש את בודפשט, אך טיסות האספקה לעיר הופסקו לחלוטין. בייאושו החליט קרל פפר-וילדנברוך להוביל את שרידי כוחותיו אל מחוץ לבודפשט. שלא כדרכו נועץ פפר-וילדנברוך עם המפקד ההונגרי איוואן הינדי, ואף הוא תמך בפריצה החוצה.
בליל ה-11 בפברואר החלו כ-28,000 חיילים גרמנים והונגרים לנוע מערבה וצפונה הרחק מגבעת הטירה. הם נערכו לפריצה החוצה בשלושה דרגים, שנעו זה אחר זה, כשאליהם מצטרפים אלפי אזרחים. לרוע מזלם של הנמלטים, הסובייטים המתינו להם בעמדות מוכנות מסביב לאזור כיכר סל קלמן.
החיילים יחד עם האזרחים, נעזרו בערפל כבד שסייע לפריצתם. הגל הראשון הצליח להפתיע את הכוחות הסובייטים, ורבים מהחיילים שנכללו בו הצליחו לפרוץ את טבעת הכיתור הסובייטית הפנימית סביב בודפשט. אולם מזלם של הגלים הבאים לא שפר עליהם. סוללות ארטילריה ורקטות סובייטיות הפגיזו אותם ללא רחם, ואלפים נהרגו בהפגזות הללו. למרות האבדות הכבדות, 5,000 עד 10,000 איש הצליחו להגיע לגבעות המיוערות צפונית מערבית לבודפשט וניסו להמשיך לנוע מערבה כדי לחבור לכוחות הציר מחוץ לעיר. אולם הכוחות הסובייטיים פתחו במצוד נרחב אחרי החיילים הנמלטים, שלא היו מצוידים בנשק כבד, ורק 600-700 חיילים גרמנים הצליחו להגיע בשלום לקווים הגרמניים. כשליש החיילים הללו השתייך לדיוויזיית הפאנצר פלדהרנהאלה, ו-170 מתוכם השתייכו ליחידות הואפן אס-אס. מספר הנמלטים ההונגריים היה בסביבות ה-80 (כולל 44 אזרחים).
רוב הנמלטים נהרגו, נפצעו או נלקחו בשבי על ידי חיילים סובייטים. המפקדים הבכירים, פפר-וילדנברוך, שנפצע קשה במהלך הפריצה, והינדי, נתפסו על ידי חיילים סובייטיים, כשיצאו ממנהרה תת-קרקעית בעיר.
תוצאות הקרב.