На Окинаве располагалась более мощная группировка японцев, насчитывавшая 67 тысяч регулярных войск и примерно 35 тысяч местных ополченцев и моряков, влившихся в ходе боев в состав регулярной армии. 1 апреля началась высадка на Окинаву шести американских дивизий 10-й армии, насчитывавшей 182 тысячи человек. На Окинаве базировались значительные силы японской авиации, препятствовавшие американским «летающим крепостям» вести прицельное бомбометание укрепленных позиций основательно зарывшейся в землю пехоты.
Японские войска без большого сопротивления оставили север Окинавы, но повели упорную борьбу за южную, хорошо укрепленную часть острова. Здесь американцев ждали доты, блокгаузы и укрепленные артиллерийские позиции, соединенные друг с другом траншеями и подземными ходами сообщения. От бомбардировок обороняющиеся прятались в многочисленных пещерах. 6 апреля японцы нанесли контрудар силами авиации и флота. Перед этим летчикам-смертникам удалось повредить 39 американских кораблей, в том числе 2 линкорам и 1 эскортному авианосцу.
В день начала наступления «камикадзе» потопили 2 эсминца к северу от Окинавы, а потом, когда 200 самолетов прорвались к побережью острова, был потоплен еще один эсминец, а также танко-десантное судно и два корабля с боеприпасами. 22 судна получили повреждения. Правда, почти все японские самолеты были сбиты истребителями и зенитной артиллерией. Последний гигантский японский линкор «Ямато» (его брат-близнец «Мусаси» водоизмещением 64 тысячи т погиб в битве в заливе Лейте), легкий крейсер и 8 эсминцев были потоплены в результате массированных воздушных налетов с авианосцев. Лишь 4 эсминца вернулись на базу.
«Камикадзе» в дальнейшем смогли повредить авианосцы «Хэнкок», «Энтерпрайз» и «Банкер Хилл». Были повреждены и 4 английских авианосца, прикрывавших высадку на Окинаве. Американская авиация наносила удары по аэродромам на Кюсю, но из-за их удаленности, многочисленности и хорошего зенитного прикрытия не смогла нейтрализовать все взлетно-посадочные полосы.
К 10 июня кадры «камикадзе» истощились, а американские войска смогли перейти в последнее наступление. 21 июня было объявлено о захвате острова. На следующий день командующий японскими войсками генерал Усидзима и члены его штаба покончили с собой в бункерах на юге острова. 11 тысяч японцев сдались в плен, остальные погибли. Погибли также 24 тысячи мирных жителей Окинавы, ставших жертвами союзной артиллерии и авиации. Американцы потеряли 13 тысяч убитыми и 15 кораблей. Еще примерно 200 судов получили повреждения, причем многие из них уже не подлежали ремонту. С захватом Окинавы была завершена блокада Японских островов и захвачен плацдарм для будущего.
12 января 1945 года началось давно готовившееся наступление Красной армии с плацдармов за Вислой. По утверждению тогдашнего начальника Генштаба германских сухопутных сил, «превосходство русских выражалось в соотношении: по пехоте 11:1, по танкам — 7:1, по артиллерии — 20:1. Если оценивать противника в целом, то можно было говорить без всякого преувеличения о его 15-кратном превосходстве на суше и по меньшей мере о 20-кратном превосходстве в воздухе». Если не на всем советско-германском фронте, то на направлениях главных ударов перевес Красной армии, возможно, был близок к цифрам, названным Гудерианом. В конце декабря он безуспешно добивался переброски дополнительных сил с Западного фронта на Восточный. Гитлер, поддержанный Йодлем, отказался, заявив: «На востоке мы еще можем жертвовать территорией, а на западе нет». Фюрер надеялся, что новое наступление вермахта в Эльзасе парализует активность союзников и поможет немцам удержать Рур. Напрасно Гудериан доказывал, что Рурский промышленный район уже выведен из строя действиями англо-американской авиации и поэтому рассчитывать теперь можно только на промышленный районы Востока — Моравию и Верхнюю Силезию.
Когда началось советское наступление в Польше, немецкий фронт был легко прорван. Немецкие дивизии, хотя и избежали окружения, но понесли очень большие потери и откатывались к Одеру. 16 января 1945 года Гитлер снял с Западного фронта 6-ю танковую армию СС, но перебросил ее не Польшу, а в Венгрию, для деблокады Будапешта. Он мотивировал свое решение необходимостью удержать венгерские нефтеперерабатывающие заводы, оставшиеся после уничтожения «летающими крепостями» почти всея заводов по производству синтетического бензина единственными источниками горючего для Германии. Контрудар в Венгрии у озера Балатон име лишь частичный успех, и прорваться к Будапешту армии Зеппа Дитриха удалось. 13 февраля 1945 года 180-тысячная германо-венгерская группировка в Будапеште капитулировала.
В Польше советские войска 20 января достигли германской границь 10 февраля командующий 1-м Белорусским фронтом Жуков составил план Берлинской операции, собираясь начать наступление на столицу рейха 19–20 февраля. Между Одером и Берлином немецких войск было мало. Однако Сталин перенацелил войска на Померанию и Восточную Пруссию. После войны Жуков объяснял это решение опасением, что немцы нанесут контрудар из Восточной Померании во фланг его фронту. Такой контрудар, не достигший большого успеха, действительно состоялся у Арнсвальде 16 и 17 февраля, но участвовало в нем только 6 дивизий, тогда как Жуков располагал 6 армиями. Вероятно, действительной причиной поворота на Север стали подозрения Сталина, что союзники, вопреки договоренностям, достигнутым на встрече руководителей СССР, США и Англии в Ялте 4–11 февраля 1945 года, захватят Померанию и Пруссию, может быть, при содействии самих немцев. Из-за этих беспочвенных страхов (никаких следов планов «броска на Кенигсберг» в англо-американских архивах не обнаружено) была упущена реальная возможность захватить Берлин в феврале 45-го и тем самым приблизить конец войны.
Чувствуя, что конец войны приближается, лидеры союзных держав сочли необходимым встретиться, чтобы наметить контуры послевоенного устройства Европы. Встреча Рузвельта, Черчилля и Сталина состоялась в Ялте 4 февраля 1945 года и длилась восемь дней. Здесь обсуждали судьбу Германии и послевоенный раздел Европы. Западные лидеры фактически согласились на преобладающее советское влияние в Восточной Европе, но настаивали, чтобы в Польше, Венгрии и других странах были проведены свободные выборы. Тогда же были определены границы зон оккупации в Германии и Австрии и достигнуто соглашение, что советско-польская граница пройдет по линии Керзона. Взамен Польша должна была получить приращение за счет германских земель. В Ялте стороны также обязались репатриировать граждан союзных государств, оказавшихся в их зонах оккупации.
Еще до завершения Ялтинской конференции на Западе союзники 8 февраля начади генеральное наступление к Рейну и за Рейн. 23 февраля американские войска форсировали Рур. К 8 марта немцы были повсеместно оттеснены за Рейн, а 9 марта американцы захватили плацдарм на восточном берегу реки, у Ремагена, благодаря тому, что в их руки попал неповрежденный мост. В ночь с 22 на 23 марта был захвачен еще один плацдарм, южнее Майнца. Наступая с этих плацдармов, союзники 1 апреля овладели Падерборном и замкнули кольцо вокруг Рурского промышленного района, где в окружении оказались основные силы группы армий «Б» — более 300 тысяч солдат и офицеров. Путь с запада в центральные районы Германии был практически открыт: перед англо-американскими войсками была лишь одна 12-я армия генерала Венка. Создалась почти такая же ситуация, как под Москвой в октябре 41-го, только в зеркальном отображении. Тогда основные силы трех советских фронтов были окружены у Вязьмы и Брянска, и между передовыми частями вермахта и Москвой почти не было соединений Красной армии. В обоих случаях только сопротивление окруженных да распутица сдерживали продвижение неприятельских войск к столице. Но у Советского Союза еще оставались огромная территория, резервы на востоке страны и недоступный для ударов люфтваффе Уральский промышленный район, не говоря уже о таких мощных союзниках, как Британская империя и США. У Германии же в апреле 45-го после катастрофы на Западе оставался не менее грозный противник на Востоке, готовый вот-вот ринуться к Берлину, да и распутица в стране, где была хорошо развита сеть шоссейных дорог и автострад, не слишком мешала продвижению войск. 17 апреля, на второй день Берлинской операции, окруженная в Руре группировка прекратила сопротивление. В плен сдалось 317 тысяч человек, в том числе 24 генерала и 1 адмирал.
Черчилль предлагал Эйзенхауэру идти на Берлин, но главнокомандующий союзными войсками в Европе предпочел главные усилия сосредоточить на юге, где Гитлер планировал оборонять Альпийскую крепость, и на севере, чтобы захватить балтийские порты. Действительно, в тот момент на флангах германского фронта как на западе, так и на востоке были сосредоточены более значительные силы вермахта, чем в центре. Эйзенхауэр считал, что первоочередной разгром более сильных группировок вынудит Германию капитулировать, а Берлину он уже не придавал стратегического значения. Действительно, Гитлер предполагал сосредоточить основные усилия на обороне Альпийской крепости в составе Австрии, Баварии, крайних северных районов Италии и Чехии. Туда фюрер планировал перебраться из Берлина, и здесь же сосредоточил наиболее сильную группировку войск. Только уже после начала советского наступления на Берлин Гитлер, осознав безнадежность положения, предпочел смерть в столице рейха гибели в какой-нибудь безвестной альпийской деревушке.
Советское наступление на Берлин началось 16 апреля. Красная армия имела над противником пятикратное превосходство в людях и еще более значительное — в танках и самолетах. Наиболее тяжелые бои развернулись на Зееловских высотах, где наступал 1-й Белорусский фронт. Немцы узнали о времени начала атаки и отвели свои войска на обратные склоны высот, так что они не понесли больших потерь при артподготовке. Также бесполезны оказались и примененные по инициативе Жукова мощные прожектора. Они должны были, по замыслу, ослепить противника, но не могли пробить пелену пыли, поднявшуюся у германских окопов от снарядов и бомб. Скорее, от прожекторов был вред для самой Красной армии, поскольку их свет освещал немцам боевые порядки наступающих. Прорвать оборону на Зееловских высотах удалось лишь на третий день наступления. Потери советских войск здесь были столь огромны, что от гор трупов, выросших перед окопами, некоторые немецкие солдаты буквально сходили с ума. Сохранился рассказ одного советского командира, положившего весь батальон в атаке на Зееловские высоты. Когда он пробовал возразить, что немецкая система огня не подавлена и надо еще поработать артиллерии, ему пригрозили расстрелом, если немедленно не поведет бойцов в атаку. Когда остатки батальона уже собирались отступать, дзот внезапно замолчал. Когда командир с немногими уцелевшими солдатами (офицеры были выбиты почти все) ворвался в дзот и пристрелил второго номера, то выяснилось, что первый номер просто сошел с ума, увидев перед собой такую гору трупов. Иначе Красная армия воевать не могла.