После поражения при Гвадалахаре Франко сосредоточил силы на севере. Республиканцы в июле-сентябре 1937 года начади наступление в районе Брунете и под Сарагосой, окончившееся безрезультатно. Эти атаки не помешали франкистам завершить уничтожение противника на севере, где 22 октября пал последний оплот республиканцев — город Хихон. Но вскоре республиканцам удалось добиться серьезного успеха. В декабре 1937 года они начали наступление на город Теруэль и в январе 1938 гола взяли его, однако затем перебросили значительную часть сил на юг. Франкисты воспользовались этим, перешли в контрнаступление и в марте 1938 года отбили Теруэль у противника. В середине апреля они вышли к побережью Средиземного моря у Винариса, разрезав надвое территорию, находившуюся под контролем республиканцев. Поражения вызвали реорганизацию республиканских вооруженных сил. С середины апреля они были объединены в шесть главных армий, подчинявшихся главнокомандующему генералу Миахе (Народная армия Испанской Республики насчитывала 22 корпуса, 66 дивизий и 202 бригады общей численностью 1 250 тысяч человек). Одна из этих армий, Восточная, была отрезана в Каталонии от остальной территории республиканской Испании и действовала изолированно. В мае 1938 года из ее состава была выделена еще одна армия, названная «армией Эбро». Республиканское командование готовило крупное наступление, чтобы восстановить сухопутную связь Каталонии с остальной страной.
Скрытно сосредоточившись, армия Эбро 25 июня 1938 года начала форсирование реки. Поскольку ширина реки Эбро составляла от 80 до 150 м, франкисты считали ее труднопреодолимым препятствием. На участке наступления республиканской армии они имели лишь одну пехотную дивизию. 25 и 26 июня шесть республиканских дивизий заняли плацдарм на правом берегу Эбро. 35-я интернациональная дивизия под командованием генерала Кароля Сверчевского (кадровый командир Красной Армии, в Испании он был известен под псевдонимом «Вальтер»), входившая в состав 15-го армейского корпуса, овладела возвышенностями Фатарелья и Сьерра-де-Кабальс. Битва на реке Эбро было последним сражением Гражданской войны, в котором участвовали интернациональные бригады (осенью 1938 года по просьбе республиканского правительства они вместе с большей частью советских советников и военных специалистов покинули Испанию, республиканцы надеялись, что благодаря этому удастся добиться разрешения французских властей на пропуск в Испанию оружия и снаряжения, закупленных правительством Негрина).
Два армейских корпуса республиканцев должны были окружить группировку франкистских войск в районе Эбро. Однако их продвижение было остановлено при помощи подкреплений, которые Франко перебросил с других фронтов (из-за республиканской атаки на Эбро франкистам пришлось прекратить наступление на Валенсию). Авиация Франко захватила господство в воздухе и постоянно бомбила и обстреливала переправы через Эбро. За 8 дней боев республиканские войска потеряли 12 тысяч убитыми, ранеными и пропавшими без вести. В районе республиканского плацдарма началась длительная битва на истощение. Вплоть до конца октября 1938 года франкисты предпринимали безуспешные атаки, пытаясь сбросить республиканцев в Эбро. Лишь в начале ноября седьмое наступление войск Франко окончилось прорывом обороны на правом берегу Эбро. Республиканцам пришлось оставить плацдарм. Их поражение было предопределено тем, что правительство Франции закрыло франко-испанскую границу и не пропускало вооружение для республиканской армии.
Героическая борьба и поражение республиканской Испании проходила на фоне репрессий в СССР, которые не могли не задеть и советских людей, воевавших на Пиренеях. Кадровый состав командиров Красной Армии, советских дипломатов, представителей внешнеторговых учреждений, сотрудников НКВД, журналистов неоднократно менялся. Был отозван Ян Берзин, главный военный советник в Испании в 1936–1937 годах, работавший под псевдонимом «генерал Гришин» (его отношения с Орловым не сложились, в 1937 году он направил Ворошилову и Ежову доклад, в котором сообщал о недовольстве испанского правительства сотрудниками НКВД и предлагал отозвать Орлова). Вернувшись в Москву в июне 1937 года, Берзин был награжден орденом Ленина, произведен в армейские комиссары 2-го ранга и вновь назначен начальником Разведупра. В ноябре того же года года Берзин был арестован, обвинен в шпионаже и в июле 1938 года расстрелян.