Для повышения устойчивости обороны широко использовались водные преграды — реки Висла, Бзура, Равка, Радомка, Нида, Пилица, Варта, Обра и другие. В систему рубежей включались подготовленные к длительной обороне города, такие, как Модлин, Варшава, Радом, Кельце, Краков, Лодзь, Быдгощ, Познань, представлявшие собой мощные опорные пункты и узлы сопротивления. Особые надежды германское командование возлагало на Померанский вал и Мезеритцкий укрепленный район, протянувшиеся вдоль польско-германской границы.
Разных рубежей, полос и «валов» немцы понастроили достаточно, не разрешалась только одна проблема — в укреплениях не было солдат. Растаскивание войск на Запад для проведения Арденнской операции и на защиту Венгрии, куда из-под Варшавы ушел 4-й танковый корпус СС, привело к существенному ослаблению центрального участка советско-германского фронта.
В группу армий «А» входили 9-я, 4-я танковая и 17-я армии, в составе которых насчитывалось 30 дивизий (учитывая охранные), 2 бригады и до 50 отдельных батальонов, составлявших гарнизоны в городах Польши, — все вместе 400 тысяч солдат и офицеров, около 5000 орудий и минометов, 870 танков и штурмовых орудий, 364 боевых самолета 6-го воздушного флота (в их числе 150 истребителей и 100 разведчиков). Была еще армейская группа «Хайнрици», но против нее отнюдь не бездействовал 4-й Украинский фронт.
Разумеется, особенно плотно немцы блокировали захваченные советскими войсками плацдармы. Если в среднем во всей полосе группы армий «А» пехотная дивизия оборонялась на фронте 15–20 километров, то по периметру плацдармов плотность возрастала до одной пехотной дивизии на 5–10 километров фронта.
Против войск 1-го Украинского фронта действовали 19дивизий из состава 4-й танковой и 17-й полевой армий (257 тысяч человек, 540 танков и САУ, 2700 орудий и минометов), причем десять из них «стерегли» сандомирский плацдарм. Первый рубеж обороны занимали 68, 72, 88, 168, 291, 304, 342-я пехотные дивизии. Численность личного состава в них достигала 6–8 тысяч человек. Позади главной оборонительной полосы располагались оперативные резервы — 24-й танковый корпус, в состав которого входили 16-я, 17-я танковые, 20-я танко-гренадерская дивизия — 374 танка и штурмовых орудия. В глубине находились 602-я и 603-я охранные дивизии, запасные полки и отдельные батальоны.
Аналогично строились боевые порядки в полосе 9-й армии генерала танковых войск барона фон Лютвица, которая должна была остановить и обескровить наступление 1-го Белорусского фронта. Там в резерве находился 40-й танковый корпус — 25-я, 19-я танковые, 10-я танко-гренадерская дивизии.
Советское командование намеревалось сокрушить немецкую оборону артиллерийским ударом небывалой мощности, массированным применением бронетехники, авиации и инженерных войск. На участках прорыва 1-го Белорусского фронта плотность артиллерии была доведена до 300–310 стволов на один километр, на 1-м Украинском — 230–250 орудий и минометов (не считая танковых и орудий прямой наводки). Артиллерийскую подготовку было решено сократить по времени, но спланировать ее так, чтобы подавить всю тактическую зону обороны противника и накрыть его ближайшие резервы. В 1-м Белорусском фронте предусматривался получасовой огневой налет перед атакой передовых батальонов, а затем поддержка их огневым валом. Если передовые батальоны не достигнут намеченной цели, предполагалась 70-минутная артподготовка. В 1-м Украинском фронте она планировалась продолжительностью 107 минут. За 45 минут до ее окончания намечались действия взводов демонстрации атаки, а за 15 минут следовал последний огневой налет.
Для непосредственной поддержки стрелковых соединений Г. К. Жуков выделил 1488 из 3712 танков и самоходных установок (в одной только 8-й гвардейской армии имелось 7 самоходных и 5 танковых полков), И. С. Конев — 820 бронеединиц из имевшихся в наличии 3648. Кроме того, на километр прорыва приходилось от 13 до 17 инженерных рот.
Против каждой немецкой дивизии маршал Конев выставил по армии с парой танковых корпусов, построенных в два, а то и в три эшелона. К примеру, 52-й армии генерал-полковника К. А. Коротеева (48, 73, 78-й стрелковые корпуса), усиленной артиллерийским корпусом прорыва (это две артиллерийские дивизии, около 1000 орудий, минометов и пусковых установок реактивной артиллерии), истребительно-противотанковой и самоходно-артиллерийской бригадами, отдельными танковыми полками, штурмовыми и огнеметными батальонами 23-й моторизованной инженерно-саперной бригады, противостояла 68-я пехотная дививия, силы которой оценивались в 8 тысяч человек при 120 орудиях.
В ходе подготовки операции тщательно изучались противостоящая вражеская группировка и характер инженерного оборудования ее обороны, осуществлялось доукомплектование частей людьми и боевой техникой, совершенствовалось боевое мастерство войск и штабов, проводилось инженерное оборудование плацдармов для развертывания на них ударных группировок, накапливались запасы материальных средств.
Прошли времена, когда «иваны» шли в бой без разведки, а приказы на наступление отдавались без знания обстановки и безотносительно к намерениям противника.
Сотни наблюдателей круглосуточно изучали передний край, засекали оборонительные объекты, перемещения немецких войск, фиксировали малейшие изменения «в пейзаже». Командующие и командиры всех степеней, отбросив доктринерские представления о «высоком оперативном искусстве» и надев солдатские гимнастерки, на брюхе обследовали передний край, проводя рекогносцировки. В немецкий тыл уходили и забрасывались по воздуху разведгруппы. Широко применялись ночные поиски, засады, подслушивание, разведка боем. Но наиболее достоверные сведения давала аэрофотосъемка.
«Прочно удерживая господство в воздухе, — пишет С. И. Руденко, — мы вели постоянную и целеустремленную разведку. Ни в одной операции до этого она не была поставлена так, я бы сказал, фундаментально… Методично, километр за километром, экипажи фотографировали территорию, на которой предстояло вести наступательные действия. Достаточно сказать, что на пленке была запечатлена площадь 109 200 квадратных километров. Нам удалось трижды сфотографировать вражеские позиции в плане на глубину 4–8 километров. Вокруг Магнушева и Пулавы траншеи и укрепления зафиксировали четыре раза, причем на этих, главных для нас, направлениях съемка велась на глубину 25–40 километров. Все это позволило вскрыть ряд промежуточных оборонительных рубежей и шесть мощных противотанковых рвов протяженностью от 20 до 60 километров».
В штабах фронтов и армий проводились игры на картах, в корпусах и дивизиях — сборы с командирами частей и подразделений, в частях — тактические учения с боевой стрельбой. Особо тщательно готовились штурмовые батальоны и передовые отряды.
Инженерные войска проделали огромную работу по строительству дорог и колонных путей, оборудованию исходных районов и переправ через Вислу. На сандомирском плацдарме было отрыто полторы тысячи километров траншей и ходов сообщения, построено 1160 командных и наблюдательных пунктов, подготовлено 11 000 артиллерийских и минометных позиций, проложено заново и приведено в порядок больше 2000 километров автомобильных дорог в расчете на то, чтобы к началу наступления на каждую дивизию и каждую танковую бригаду имелось по две дороги. В полосе 1-го Украинского фронта саперы навели через Вислу 13 мостов и организовали три паромные переправы большой грузоподъемности, 13 мостов построили и на 1-м Белорусском. Для отражения возможных контрударов врага создавались подвижные отряды заграждения, группы истребителей танков.
Поистине титанический труд потребовался для накопления фантастического количества материальных запасов. Один боекомплект трехкорпусной танковой армии весил 2385 тонн, одна заправка горючим — 985 тонн, суточная дача продовольствия — 100 тонн. Боекомплект фронта «тянул» на 40 тысяч тонн, а одна суточная «пайка» фуража и продовольствия — около 5000 тонн. Перед операцией на двух фронтах накопили по 3–4 боекомплекта снарядов и мин всех калибров (около 9 миллионов выстрелов), 4–5 заправок автобензина и дизельного топлива, 9–14 заправок авиационного топлива, продовольствия — на 30–50 суток. По железным дорогам, которые на основных направлениях пришлось перешивать с европейской на союзную колею, было подвезено 133 тысячи вагонов с войсками и материальными средствами. Все это тыловым службам приходилось разгружать, перевозить в исходные районы, складировать, закапывать в землю, маскировать.
Скрытности, маскировке и дезинформации противника относительно своих сил и намерений придавалось первостепенное значение. Передвижения проводились только в ночное время, к утру все замирало. К танкам и машинам привязывали ели, заметавшие следы на снегу. Все подразделения были обеспечены маскировочными зимними сетями. На 1-м Украинском фронте для прикрытия своих позиций и коммуникаций от вражеских глаз было установлено 240 километров вертикальных масок высотой до 4 метров.