1 ноября войска 4-го Украинского фронта прорвались через Перекоп в Крым, но были отброшены. Одновременно был высажен десант под Керчью, рядом был захвачен также плацдарм под Эльтигеном. Однако основным силам десанта из-за шторма высадиться не удалость, плацдарм был блокирован. «Эльтигенцы» в декабре провели смелый рейд и соединились с основными силами. Бои под Керчью продолжались до апреля 1944 г.
20 октября 1943 г. произошло переименование фронтов: Воронежский — в 1-й Украинский (командующий Н. Ватутин), Степной — во 2-й Украинский (командующий И. Конев), Юго-Западный — в 3-й Украинский (командующий Р. Малиновский), Южный — в 4-й Украинский (командующий Ф. Толбухин). В 4-х фронтах было 2406 тыс. человек, 2015 танков и САУ, 2600 боевых самолетов, 28 654 орудий и минометов. Им противостояли группы армий «Юг» (командующий Э. Манштейн) и «А» (командующий Э. Клейст). Они располагали 1760 тыс. солдат, 2200 танков и штурмовых орудий, 1460 боевых самолетов и 16 800 орудий и минометов. Советские войска быстрее пополнялись живой силой (в том числе и за счет мобилизации на Украине) и техникой.
К началу 1944 г. на Украине было сосредоточено 40 % пехотных и 70 % танковых и моторизованных дивизий восточного фронта противника и 42 % стрелковых и 80 % танковых и механизированных дивизий советского фронта. С обеих сторон в сражении участвовало около 4 млн. человек.
Началось освобождение Правобережной Украины. Замысел Ставки заключался в том, чтобы, наступая в юго-западном направлении от Днепра, расчленить группы армий «Юг» и «А», изолировать их от группы армий «Центр» и прижать немецкие войска к морю, отрезая им пути отхода.
В ходе сражений несколько раз повторялся один и тот же сценарий. Превосходящие по численности советские войска наносили удары, раскалывающие фронт противника, охватывали его крупную группировку. Окруженные войска вермахта сохраняли боеспособность, Манштейн наносил контрудары. В итоге окруженная группировка, бросив технику, как правило, выходила из окружения с большими потерями. Войска обеих сторон вязли в грязи, но Красная армия продвигалась вперед.
В целом наступление на Правобережной Украине получило название Днепровско-Карпатская стратегическая операция (24 декабря 1943 — 6 мая 1944 гг.), которая сама является серией фронтовых операций.
В ходе Житомирско-Бердичевской операции (24 декабря 1943 — 15 января 1944 гг.) войска 1-го Украинского фронта отбросили противника дальше от Киева и освободили Житомир, создав угрозу флангу группы армий «Юг».
5-16 января 1944 г. в ходе Кировоградской операции войска 2-го Украинского фронта 8 января освободили Кировоград, но не смогли соединиться с 1-м Украинским фронтом. Окруженная 3-я танковая дивизия противника 8 февраля прорвалась на запад.
Гитлер требовал от своих генералов, чтобы они продолжали цепляться за Днепр. Это было и важным пропагандистским фактором (вермахт все еще на Днепре), и к тому же разделяло 1-й и 2-й Украинские фронты, создавая угрозу удара им во фланг с Каневского выступа.
24 января началась Корсунь-Шевченковская операция, в ходе которой силами двух Украинских фронтов 31 января было окружено более семи немецких дивизий численностью от 54 до 80 тысяч. Генерал Н. фон Форман вспоминал о советском наступлении: «Другого сравнения я не нахожу — прорвало плотину, громадный поток хлынул на равнину мимо наших танков, окруженных немногочисленными гренадерами, как мимо скал, возвышающихся в бурлящем потоке. Мы поразились еще больше, когда чуть позже кавалерийские соединения трех советских дивизий сомкнутым строем помчались сквозь наш заградительный огонь».
Противник наносил контрудары, на короткое время немцам удалось даже отсечь прорвавшиеся корпуса 5-й танковой армии. Но полуокруженные советские танковые части не стали останавливаться и в районе Звенигородки соединились с частями 1-го Украинского фронта. Советские войска не стали развивать успех вглубь фронта, сосредоточившись на ликвидации окруженной группировки под командованием генерала В. Штеммермана. Противник наносил сильные деблокирующие контрудары, но безуспешно. Окруженная группировка продолжала ожесточенно сопротивляться, и в ночь с 16 на 17 февраля бросилась на прорыв. Под ударами советских войск немцы понесли большие потери, погиб и Штеммерман, но более 30 тыс. немецких солдат вышли к своим.
27 января конные корпуса РККА прорвались в немецкие тылы в районе Ровно и действовали во взаимодействии с партизанами Ковпака, Федорова и Сабурова. Наступая в болотистом Полесье, войска 1-го Украинского фронта снова стали обходить фланг группы армий «Юг».
На предложения Манштейна отвести войска на более удобные позиции Гитлер возражал: «Ведь когда-нибудь русские перестанут наступать! С июля прошлого года они ведут непрерывное наступление. Долго это не может продолжаться».
Несмотря на стремление Манштейна спрямить фронт, Гитлер отказывался давать согласие на отход с Никопольского плацдарма, который, благодаря изгибу Днепра, уходил далеко на восток и прикрывал Крым. Попытки 3-го и 4-го Украинских фронтов взять плацдарм долго не удавались, и только в результате Никопольско-Криворожской операции (30 января — 29 февраля) этот очаг сопротивления был ликвидирован, но оборонявшаяся здесь 6-я армия сумела отойти. 8 февраля был освобожден Никополь, 22 февраля — Кривой рог.
Продвинувшись от Днепра вглубь Правобережной Украины, четыре Украинских фронта все же не смогли разгромить группы армий «Юг» и «А». Войска увязли в непролазной грязи, в которой часто не могли двигаться даже танки.
Весной была предпринята новая серия ударов в прежнем направлении.
В ходе Проскурово-Черновицкой операции (4 марта — 17 апреля) сменивший погибшего Ватутина Жуков сосредоточил силы уже трех танковых армий и вышел к Днестру. Группа армий «Юг» была рассечена.
Под Тернополем 7-10 марта войска 3-й и 4-й советских танковых армий столкнулись с контрударом девяти танковых и пяти пехотных дивизий противника. В этом сражении участвовало около 1300 танков. Наступление 1-го Украинского фронта было приостановлено. Но, взяв Черновцы 17 марта и 18 марта — Жмеринку. 1-й Украинский фронт создал угрозу окружения 1-й танковой армии X. Хубе под Каменец-Подольском. С юга подходили части 2-го Украинского фронта. 26 марта Каменец-Подольский был взят, а 31 марта здесь была окружена 200 тысячная группировка. Нанеся удар на северо-запад, германская 1-я ТА вышла из советского окружения 7 апреля, что позволило немцам прикрыть Львов.
В ходе Уманеко-Батошанской операции (5 марта — 17 апреля) войска 2-го Украинского фронта разгромили 8-ю армию противника и стремительно прорвались к Южному Бугу. Здесь советские солдаты наблюдали трагикомический эпизод, когда румынские пограничники «Транснпстрии» требовали от отступающих немецких войск соблюдать пограничные формальности, а те в ответ атаковали заигравшихся в миниимперию союзников. «Пограничный конфликт» продолжался до тех пор, пока «спорную территорию» не заняли советские войска.
Над группой армий «Юг» вновь нависла угроза быть расчлененной и отрезанной. 25 марта войска 2-го Украинского фронта вышли к румынской границе на реке Прут.