Получив наместничество в восточной Испании, поскольку в западной Испании в это время стояли войска Метелла, Помпей летом 77 года до н. э. перешел Альпы и осенью вышел на левый берег Эбро. Серторий попытался не допустить соединения противников и не пропустить Помпея за Эбро, однако его позиции оказались прорванными, а в сражении при Валентии Геренний был разбит, потеряв более 10 тысяч человек.
В 75 году до н. э. Метелл двинулся в восточную Испанию для соединения с Помпеем. И Серторий, и Помпей хотели, чтобы сражение произошло до подхода войск Метелла. Серторию было не выгодно соединение сил противника, а Помпей не желал делить славу победителя с другим полководцем. Их встреча произошла на реке Сукроне, день близился к закату, и сражение началось уже вечером. Исход этой битвы в первый день не был определен, ни одному из полководцев не удалось одержать полную победу. Помпей в ходе сражения получил ранение и чуть не был взят в плен. На следующий день оба полководца снова выстроили войска для продолжения битвы, но в это время к Помпею подошли легионы Метелла, и Серторий приказал своим войскам рассеяться.
В 74–73 годах до н. э. борьба на Эбро шла с переменным успехом – легких побед не было. Она закончилась лишь на следующий год со смертью Сертория, которого убили во время пира его же военачальники. Последние отряды серторианцев были распущены Помпеем. Перперна, воевавший на стороне Сертория, был взят в плен, и испанские города стали открывать ворота перед войсками Помпея. Война в Испании не принесла Помпею новой славы, поскольку он играл в ней второстепенную роль, не проявляя прежней решительности и быстроты. Причиной этого было небрежное отношение к нему сената, не посылавшего своевременно в армию денег, боеприпасов и провианта.
После возвращения в Италию Помпей участвовал в заключительном этапе борьбы с восставшими рабами под руководством Спартака. К моменту его прихода основные силы восставших были уже разгромлены Крассом, но слава победителя Спартака досталась Помпею. Затем он соединился с оптиматами, которым обещал в случае достижения консульства провести законы в демократическом духе с целью отмены конституции Суллы. Подойдя с войском к Риму, Помпей потребовал себе консульства и триумфа, а солдатам – предоставления земельных участков. Это позволило ему выиграть выборы. Согласно новым правилам, принятым по предложению Помпея, народные трибуны восстанавливались в своих правах, всадники получали одинаковое с сенаторами право участия в судах, цензорам возвращена была прежняя власть.
Войско было целиком на стороне Помпея, римское население также было благожелательно настроено к нему. Все это заставляло противников молчать. Однако и сам Помпей не решался пойти на крайние шаги и, достигнув ближайшей цели, распустил войско и сложил с себя полномочия консула.
До 67 года до н. э. Помпей жил как частный гражданин, но в том году сенат принял два закона, предложенных сторонником Помпея Габинием: первый – об отозвании Лукулла из Азии, где велась война с Митридатом, второй – о назначении главнокомандующего для борьбы на море с пиратами. Последний закон был предложен непосредственно для Помпея.
Согласно этому закону, главнокомандующему в предстоящей войне давалась на три года власть над всем Средиземным морем и его береговой полосой по всей его окружности, а также предоставлялось право пригласить 15 сенаторов в звании преторов и квесторов и право производить неограниченный набор войска. Главнокомандующий мог распоряжаться столичной и провинциальной кассами, единовременно получая 144 миллиона сестерциев.
Несмотря на сильное противодействие со стороны противников Помпея – Пизона, Катулла и других, избрание Помпея было восторженно встречено римским населением. Помпею было даже разрешено увеличить свое вооружение и вместо 15 иметь с собой 24 претора. Весной 67 года до н. э. Помпей с сильным войском (120 тысяч пехоты и 5 тысяч всадников) на 500 кораблях вышел в море. Для более успешной борьбы и поиска пиратов Помпей предварительно разделил морскую «территорию» на 13 округов и поручил каждый отдельный округ специальному легату.
На первом этапе Помпей решил очистить от пиратов сицилийские и африканские воды. Это ему удалось сделать за 40 дней. Затем с 60 лучшими кораблями Помпей отправился в сердце пиратов – Киликию, где взял Антикрат. Были уничтожены стоянки и замки пиратов, захвачены около 400 кораблей и истреблены до 10 тысяч человек. Так завершилась война в области восточного бассейна Средиземного моря, и уже летом того же года на Средиземноморье началась мирная жизнь, торговля вновь стала процветать.