Цезарь не стал преследовать Помпея. Быстро уладив дела в Риме и получив там необходимые ему средства для продолжения войны, он направил своих легатов на Сардинию и Сицилию с поручением далее отправиться в Африку, а сам с основным войском как можно быстрее двинулся в Испанию. По пути его отказался впустить греческий город Массалия на галльском побережье, но Цезарь оставил для осады Массалии Гая Требония и флот под командованием Децима Брута, сам же продолжил путь в Испанию, куда заранее направил свой авангард с целью выбить Афрания из пиренейских проходов. В битве у города Илерды в Ближней Испании соединенные армии Афрания и Петрея были разбиты, а Варрон, узнав об этом, сам со своими двумя легионами сдался. Испанская армия Помпея перестала существовать. Управлявший Сицилией Катон без боя покинул остров, а помпеянского наместника Сардинии изгнали сами жители. Правда, в Африке произошла осечка. Переправившиеся туда с Сицилии войска под командованием Куриона, того самого, кто был трибуном 50 г. до н. э., а в начале следующего года бежал к Цезарю вместе с Антонием и Квинтом Кассием, были полностью разгромлены, и сам Курион погиб. Но все же сил у Вара в Африке было слишком мало, чтобы они могли существенно повлиять на исход войны. Расчеты на галльский мятеж также не оправдались. После подавления великого восстания под руководством Верцингеторикса Галлия была замирена достаточно прочно. Массалия к этому времени была взята Требонием и Брутом. В результате всех этих действий под властью Цезаря оказались уже не только Рим и Италия, но и вся западная часть государства, кроме Африки. А это резко изменило и военную, и политическую ситуацию.
Впрочем, Помпей тоже не терял времени даром. Он стал укреплять свой тыл. Наложив большую дань не только на провинции, но и на вассальные государства, Помпей сумел получить довольно значительные финансовые средства, которые он использовал для создания мощной армии. Свои отряды в нее направили некоторые вассальные правители, как, например, владыки Коммагены и Галатии. Набор был произведен и среди жителей провинций. Всего под командованием Помпея собрался 21 легион и большое количество вспомогательных частей, в том числе 7 тысяч всадников. Помпей тщательно готовил эту армию для войны, постоянно занимаясь военными упражнениями, причем он сам подавал пример воинам. Большое значение Помпей придавал флоту. В свое время Габиний, восстановив на египетском троне Птолемея XII, оставил в Египте не только гарнизон, но и корабли, которые теперь привел к отцу старший сын Помпея Гней. Были собраны суда и из других мест. В результате был создан довольно мощный флот, командовать которым Помпей поручил Бибулу. Этот флот фактически господствовал в Адриатическом море, ограждая сухопутные силы Помпея от переправы цезаревских войск. Для снабжения всей этой громадной армии было собрано большое количество провианта. Часть армии во главе со Сципионом располагалась в глубине полуострова в Македонии. Свои же основные силы Помпей расположил сравнительно недалеко от Диррахия, с тем чтобы при благоприятных обстоятельствах либо самому переправиться в Италию, либо предотвратить переправу Цезаря. Однако он не особенно торопился. Наступала зима, а зимой навигация обычно прекращалась, так что перебраться через море с довольно большим войском считалось невозможным. Но он опять недооценил Цезаря.
Несмотря на зимнее время и господство на море помпеянского флота, Цезарь со сравнительно небольшим авангардом 5 января 48 г. до н. э. переправился в Грецию. Узнав об этой неожиданной переправе, Помпей как можно быстрее двинулся к Диррахию, чтобы захватить его раньше Цезаря. Ему это удалось. Цезарь, оказавшись в трудном положении, пытался затянуть время и снова предложил начать мирные переговоры, но Помпей их отверг. Началась серия стычек между войсками соперников, не приносившая решительного успеха ни той, ни другой стороне. Но позже к Цезарю пришли подкрепления из Италии. А Помпей усилил свой натиск. Одна из стычек перешла в ожесточенное сражение, в котором Цезарь был разгромлен. Все его попытки остановить бегство своих солдат ни к чему не привели. Помпей еще раз одержал победу. Казалось, нужно еще одно сравнительно небольшое усилие, чтобы окончательно добить Цезаря. И этого требовали некоторые командиры помпеянской армии. Но Помпей рассудил иначе. Он счел, что его воины слишком устали, чтобы эффективно преследовать врага. А главное, он полагал, что после такого поражения и в условиях неминуемо надвигающегося голода, ибо у Цезаря не было ни провианта, ни денег, армия Цезаря распадется сама собой.
Цезарь и сам, по-видимому, боялся такого исхода. Поэтому он, ограничившись разжалованием некоторых знаменосцев, наиболее, по его мнению, виновных в бегстве солдат, не только отказался от принятия всяких других дисциплинарных мер, но, наоборот, постарался ободрить и рядовых воинов, и командиров и даже признал свою ошибку в расположении лагеря у Диррахия, где все преимущества были на стороне Помпея. А затем он вообще радикально изменил весь план кампании. Вместо того чтобы отсиживаться в своем лагере или попытаться снова перебраться в Италию, Цезарь двинулся в глубь Балканского полуострова. Он решил либо нанести удар по армии Сципиона, стоявшей в Македонии, либо, если Помпей успеет с ним соединиться, дать сражение в более подходящих обстоятельствах. Этого Помпей никак не ожидал. И когда Цезарь начал свое движение, ему ничего не оставалось, как двинуться вслед за ним. Помпей действительно сумел соединиться со Сципионом. И объединенная армия под командованием Помпея спустилась на равнину Фессалии и подошла к городу Фарсалу, куда к тому времени подошли и войска Цезаря. Немногим восточнее этого города и разыгралась битва, решившая исход этой гражданской войны.
Помпеянцы были полностью уверены в успехе. Они уже заранее делили и должности, и дома в Риме. В этом их поддерживало не только воспоминание о победе у Диррахия, но и почти двойное превосходство в пехоте и более чем двойное — в коннице. Помпей избрал своим паролем «Геркулес непобедимый». Утром 9 августа 48 г. до н. э. началось сражение. Несмотря на численный перевес помпеянских войск, боевая закалка цезаревских воинов и талантливое руководство самого Цезаря дали себя знать. Попытка помпеянской конницы обойти правый фланг цезарианской армии не удалась. Конница Помпея была почти уничтожена цезаревским резервом, и это во многом решило дело. Цезарианцы перешли в решительное наступление. Их натиск был столь силен, что солдаты Помпея начали постепенно отступать. Сначала этому натиску поддалось левое крыло армии Помпея, которым командовал Люций Домиций Агенобарб, но вскоре солдаты вспомогательных частей впали в панику и бросились в бегство, расстроив сплоченный строй отступающих легионеров. Правое крыло отступало медленно, но затем и это отступление превратилось в бегство. А на центр, которым командовал Сципион, Цезарь бросил свои лучшие части. Армия Помпея была отброшена в свой лагерь. Несмотря на невероятную усталость своих воинов, Цезарь решился на штурм лагеря, не желая повторять ошибку Помпея под Диррахием. И лагерь тоже был взят. При виде своих бегущих солдат и падения лагеря Помпей впал в полную прострацию. Опомнившись, он сел на лошадь и в сопровождении четырех спутников поспешил в соседний город Лариссу. В битве при Фарсале погибло около 6 тысяч рядовых воинов Помпея из числа римлян (вспомогательных воинов никто не считал), а также 40 знатных всадников и 10 сенаторов, среди которых был и Агенобарб.
Разгром был полный. Никаких войск в Греции и Македонии у Помпея больше не было. Правда, его корабли с воинами еще стояли у Коркиры в Ионийском море, а в Африке тоже еще имелись силы, которые в прошлом году победили Куриона. И оставшиеся в живых помпеянцы, не желавшие сдаваться Цезарю, стали собираться в Африку. Среди них был и сын Помпея Гней. Но сам Помпей так растерялся, что ни о каком сопротивлении больше не думал. Он направился к побережью, где сел на какое-то речное судно, а затем сумел перебраться на торговый корабль, на котором приплыл в Митилену, где находились его жена Корнелия и младший сын Секст. Захватив жену и сына, он продолжил плавание, больше похожее на бегство.