Замысел сводился к тому, чтобы нанести три удара по сходящимся направлениям.
Главный удар намечалось нанести силами 6-й полевой армии и 6-й танковой армии СС между озерами Веленце и Балатон в юго-восточном направлении с целью расчленить войска 3-го Украинского фронта на две части, выйти к Дунаю на участке Дунапентеле, Дунафёльдвар и захватить плацдармы на левом берегу. В последующем войска 6-й танковой армии СС должны были наступать на север и юг вдоль правого берега Дуная.
Второй удар предполагался в полосе 1-й болгарской армии силами 91-го армейского корпуса группы армий «Е» из района Дони-Михоляц на север, навстречу танкам Дитриха.
Третий удар планировалось нанести 2-й танковой армией из района Надьканижи на Капошвар. Впрочем, ни одной танковой дивизии армия Максимилиана де Ангелиса в своем составе не имела. Активными действиями она сковывала силы 57-й армии, в тылу которой должны были сомкнуться немецкие «клещи».
С воздуха наступление прикрывала авиация 4-го воздушного флота.
Всего, с учетом частей 3-й венгерской армии, оперативно подчиненных генерала Балку, и войск группы армий «Е», действовавших по правому берегу Дратвы, противник, по советским оценкам, имел в полосе 3-го Украинского фронта 31 дивизию, в том числе 11 танковых, 5 боевых групп и моторизованную бригаду. В составе этой группировки насчитывалось 431 тысяча человек, 5630 орудий и минометов, 877 танков и штурмовых орудий, 850 самолетов.
Перемещение и сосредоточение 6-й армии СС велось с соблюдением всех мер секретности. Чтобы затруднить идентификацию соединений, на перебрасываемой в Венгрию технике были закрашены дивизионные значки, эсэсовцам велели снять нарукавные повязки, сама армия в документах именовалась штабом старшего начальника инженерных войск, а отдельные соединения — строительными и учебными частями. Гитлер опасался, как бы русские раньше времени не догадались о его намерениях и не подготовились к отпору. Однако весь комплекс мероприятий был перечеркнут атакой 1-го танкового корпуса группенфюрера Присса у реки Грон.
Во второй половине февраля советское командование располагало достоверными сведениями, что в Западной Венгрии сосредоточивается крупная, преимущественно танковая, группировка противника. 21 февраля начальник Главного разведывательного управления РККА генерал-лейтенант И. И. Ильичев представил донесение, подтверждавшее, что «вся 6-я танковая армия СС направляется в Венгрию». И ясно было, что здесь затевается что-то недоброе. В сложившейся обстановке Ставка приказала Толбухину, не останавливая подготовку наступления, принять меры к отражению возможного контрудара противника. Таким образом, фронту предстояло подготовиться одновременно к оборонительной и к наступательной операциям: создать «глубокую оборону, особенно сильную в противотанковом отношении», и в то же время сохранить людей, технику и боеприпасы для удара на Вену.
К началу марта в составе 3-го Украинского фронта (4-я гвардейская, 27, 26, 57-я, 1-я болгарская, 17-я воздушная армии, 18-й и 23-й танковые, 1-й гвардейский механизированный, 5-й гвардейский кавалерийский корпуса — 37 стрелковых, 3 кавалерийские, 6 болгарских пехотных дивизий, 1 укрепрайон, 1 кавалерийский, 1 механизированный, 2 танковых корпуса, 1 механизированная и 1 самоходно-артиллерийская бригада) насчитывалось 566 тысяч солдат и офицеров, 6889 орудий и минометов, 399 танков и самоходных установок, 965 самолетов.
Отсюда наши историки сделали вывод, что «общее соотношение сил в людях, артиллерии и самолетах было почти равным, но по танкам и самоходно-артиллерийским установкам противник превосходил более чем вдвое». Утверждение, что 431 тысяча примерно равна 566 тысячам, выглядит спорным. Югославская армия, имевшая восемь дивизий, при этом вообще не учитывается. Вся немецкая бронетехника считается исправной, хотя на самом деле боеготовых машин, с учетом ЗСУ, насчитывалось 580 единиц, в том числе 35 «тигров». Что касается советской стороны, то только исправная техника и принимается во внимание. Учитывая, что немецкие летчики и танкисты испытывали ставшие хроническими проблемы с горючим и боеприпасами, русские сидели в обороне, а элемент внезапности немцами был утрачен, все выглядит не так уж грустно.
Поскольку «вскрыть замысел врага» для советской разведки было непосильной задачей (хоть генерал Штеменко задним числом и утверждает обратное), в штабе Толбухина путем проверки местности на проходимость и танкодоступность вычислили два наиболее вероятных направления немецкого наступления — севернее Секешфехервара на Будапешт и между озерами Веленце и Балатон на Дунапентеле. К тому же здесь противник находился от Дуная в 25–30 километрах. Первый вариант казался предпочтительнее.
В соответствии с принятой «доктриной» основные усилия войск фронта были сосредоточены в полосах, прикрывавших эти направления, 4-й гвардейской армии (20, 21, 31-й гвардейские стрелковые корпуса, 1-й гвардейский укрепрайон) генерал-лейтенанта Н. Д. Захватаева и 26-й армии (30, 104, 135-й стрелковые корпуса) генерал-лейтенанта Н. А. Гагена. Во втором эшелоне находилась 27-я армия (35-й гвардейский, 33-й, 37-й стрелковые корпуса) генерал-полковника С. Г. Трофименко. 57-я армия (6-й гвардейский, 64-й стрелковые корпуса) и 1-я болгарская армия (3-й, 4-й пехотные корпуса) удерживали 200-километровый рубеж: озеро Балатон, Бабоча и далее по левому берегу реки Дратва. К началу марта была подготовлена достаточно развитая в инженерном отношении и эшелонированная на глубину 30–50 километров оборона. Тактическая зона состояла из двух полос глубиной 10–15 километров. Были созданы ротные противотанковые опорные пункты, имевшие 3–5 орудий и 4–6 противотанковых ружей, батальонные противотанковые узлы, противотанковые районы и подвижные противотанковые резервы, «посеяно» около 30 тысяч противотанковых мин, сформировано 68 подвижных отрядов заграждения. В 83-километровой полосе от Ганта до озера Балатон было сосредочено 4400 орудий и минометов, 339 реактивных установок. Общая оперативная плотность артилллерии на наиболее важных направлениях составляла 60–70 орудий и минометов, противотанковых стволов — 20–25, плотность минных заграждений на отдельных участках — 2700 противотанковых и 2500 противопехотных мин на один километр. Советские войска заняли первую, вторую и тыловую полосы. Наибольшая плотность обороны была создана на рубеже Гант — озеро Веленце, то есть в полосе 4-й гвардейской армии, где на дивизию в среднем приходилось 3,3 километра, южнее оперативная плотность соединений была ниже — 4,5–6,5 километра на дивизию.
В резерве командующего фронтом находились 18-й и 23-й танковые, 1-й гвардейский механизированный, 5-й гвардейский кавалерийский, 133-й стрелковый корпуса и шесть артиллерийских бригад. Правда, в ходе сражения за Будапешт бронетанковые войска понесли значительные потери, не успели полностью восстановиться и все вместе насчитывали в строю 189 средних танков и 210 самоходно-артиллерийских установок.
17-я воздушная армия, которой командовал генерал-полковник В. А. Судец, имела задачу вести разведку, наносить удары по вражеским войскам, прикрывать соединения фронта с воздуха. Дунайская военная флотилия осуществляла перевозку грузов через Дунай в интересах двух фронтов и осуществляла траление реки.
Сражение началось в ночь на 6 марта на южном участке фронта, где противник тремя пехотными дивизиями нанес два удара: первый — из района Дони-Михоляц по войскам 1-й болгарской, второй — из района Валпово по частям 3-й югославской армии. Внезапной атакой, без проведения артиллерийской подготовки, немцы форсировали Дратву и захватили на ее северном берегу два плацдарма до 8 киллометров по фронту и 5 километров в глубину каждый. Возникла угроза выхода противника к переправам на Дунае и в тыл 57-й армии. Поэтому Толбухин приказал выдвинуть из своего резерва 133-й стрелковый корпус генерал-майора П. А. Артющенко и, организовав контрудар во взаимодействии с болгарскими и югославскими войсками, восстановить положение. Контрудар успеха не имел, но дальнейшее продвижение немцев на этом участке было остановлено.
Второй удар последовал в 7 часов утра силами 2-й танковой армии вдоль железной дороги на Капошвар, Домбовар. Введя в бой около 70 танков и САУ, они на узком участке вклинились в оборону 57-й армии на глубину до 5 километров, но были остановлены контратаками вторых эшелонов дивизий, сильным артиллерийским огнем и налетами 189-й штурмовой авиадивизии. При этом в составе советского 64-го стрелкового корпуса «проходила стажировку» болгарская 12-я пехотная дивизия.
Наконец, в 8.45 на участке между озерами Веленце и Балатон перешли в наступление главные силы — 6-я танковая армия СС (1-й кавалерийский, 403-й народно-артиллерийский, 1-й и 2-й танковые корпуса СС) и 3-й танковый корпус 6-й армии.
Армия Дитриха спускалась на юго-восток вдоль широкого канала Шарвиз, разделявшего советский плацдарм на две части. Из района Польгарди по западному берегу наступали 1-й кавалерийский корпус (3-я, 4-я кавалерийские дивизии, 25-я венгерская пехотная) и 1-й танковый корпус СС (1-я танковая дивизия СС «Лейбштандарт «Адольф Гитлер», 12-я танковая дивизия СС «Гитлерюгенд», 501-й тяжелый танковый батальон СС, 560-й батальон истребителей танков). Этой ударной группировке предстояло соединиться с наступавшими с юга силами группы армий «Е».