После взятия Кёнигсберга 9 апреля 1945 года 2-й Белорусский фронт (командующий Рокоссовский) вышел на восточный берег Одера. Это позволило 1-му Белорусскому фронту под командованием маршала Жукова сконцентрироваться напротив Зееловских высот. С юга от высот, расположились войска 1-го Украинского фронта (командующий Конев). Войска трех фронтов готовили наступление на Берлин, который с востока, примерно в 70 км от Берлина, прикрывали многочисленные холмы недалеко от города Зеелов. Зееловские высоты представляли собой глубоко эшелонированную оборону немецких войск. Их оборону обеспечивала 9-я немецкая армия, которая имела 14 стрелковых формирований, 587 танков, 2625 стволов артиллерии. К югу от высот располагалась 4-я бронетанковая армия, нацеленная против 1-го Украинского фронта. Общая численность немецких войск составляла 112 тысяч человек. 1-й Белорусский фронт располагал 9 общевойсковыми и 2 танковыми армиями, состоявшими из 77 стрелковых соединений, 2 конных соединений, 5 танковых и 2 механизированных корпусов, 8 артиллерийских и 1 миномётного подразделения, сосредоточенными на Кюстринском плацдарме. У фронта было в распоряжении 3 059 танков и самоходных установок, и 16 934 стволов артиллерии и миномётов. Общая численность фронта достигала 768 тысяч человек.
Карта боев на Зееловских высотах.
Советская артподготовка в районе Зееловских высот.
Наступление на Зееловские высоты началось 16 апреля в 05:45 с 30-минутной артподготовки. В 06:15 в атаку пошла пехота, вместо танков. Жуков рассчитывал, что она проложит коридор для введения танков в прорыв. Мощная артподготовка передней линии немецкой обороны не дала положительных результатов, поскольку немцы отвели войска на вторую линию обороны. Для подсветки поля боя и ослепления противника, предусматривалось после артподготовки использовать зенитные прожектора. Однако, в результате артподготовки в воздухе висело облако пыли и дыма — от чего лучи прожекторов рассеивались и не достигая цели, освещали наступающие части уже для немцев, что позволяло эффективно расстреливать советскую пехоту со второй линии обороны. Понеся огромные потери, пехота не смогла продвинуться дальше подошвы Зееловских холмов. Тогда Жуков во второй половине дня 16 апреля ввел в сражение обе танковые армии.
Расчет зенитного орудия FlaK M39 ведет огонь на Зееловских высотах.
Штурм Зееловских высот.
Подбитые советские танки у Зееловских высот.
Советские бойцы у захваченного трофея.
Танки, вместо обхода высот с севера, пошли вверх на холмы по позициям, занятым общевойсковыми армиями. Есть документально зафиксированные свидетельства раненых, как танки давили свою же пехоту. Под огнем противника все войска перемешались, и создалась полная неразбериха в управлении ими. К тому же советская авиация, в создавшейся суматохе бомбила и свои и вражеские позиции. За первый день боев Красной Армии удалось потеснить немцев на сами высоты. Бои 17 апреля не принесли ожидаемых результатов, советские войска вместо продвижения вперед «перемалывали» контратаки немцев до полного исчерпания их резервов. И лишь 18 апреля, танкисты пробили узкую брешь в обороне немцев, через которую «протиснули» всю танковую армию в тыл противнику. За ними в прорыв устремились пехотные подразделения. Таким образом, Зееловские высоты не были взяты, а обойдены с фланга, с угрозой их окружения. К концу 19 апреля высоты были брошены немцами, а их соединения оттеснены на юго-запад, в леса южнее Берлина. Около 10 тысяч немецких войск сумело пробиться к Берлину. Остальные были разгромлены в отдельном окружении у станции Хальбе и в боях за Берлин они не участвовали. Собственно этим и была достигнута цель операции, заключающаяся в штурме Зееловских высот.
Постфактум потери советских войск на Зееловских высотах стали предметом спекуляций. В потери на высотах записывались все жертвы Берлинской операции от берега Балтики до Тюрингии, все раненые объявлялись погибшими. Обнародовалась цифра в 300 тысяч человек. Фактически, потери советских войск при штурме высот составили около 6 тысяч человек убитыми и 25 тысяч раненными. Немецкие потери определялись в 12 тысяч человек.