Разногласия среди греков затрудняли организацию обороны. Многие понимали, что объектом агрессии станут не только Афины. Все греческие города-государства могут лишиться своей свободы. Некоторые представители греческих городов призывали к отступлению из Средней Греции с целью ухода на Пелопоннес, чтобы хорошо укрепленный Истмийский перешеек стал препятствием для войск персидского царя. Афинянин Фемистокл, который после смерти Мильтиада, героя Марафона, стал самым влиятельным политическим деятелем Афин, настаивал на создании мощного боевого флота, который смог бы противостоять персидскому. Его политический противник Аристид, напротив, помня о триумфе Афин в Марафонской битве, требовал усиления сухопутных военных сил. Возобладала точка зрения Фемистокла: после изгнания Аристида из Афин путем остракизма началось ускоренное строительство афинского флота. При этом Фемистокл, сознавая мощь сухопутного спартанского ополчения, предложил отдать спартанцам командование объединенными союзными греческими силами.
Тем временем армия персов во главе с Ксерксом подошла к Фермопилам – узкому горному ущелью в Центральной Греции. Это был очень важный стратегический пункт между Фессалией и Центральной Грецией. Здесь по плану союзников небольшое греческое ополчение должно было остановить лавину персов, пока у мыса Артемисия, на побережье острова Эвбея, объединенный греческий флот даст отпор персидскому.
Ксеркс пока выжидал, надеясь, что греки поймут бессмысленность сопротивления и покинут Фермопильский проход. Несколько попыток прорвать оборону союзников оказались безуспешными: греки стояли насмерть. Однако помощь персам пришла неожиданно: перебежчик из местных жителей показал им обходной путь и их передовые отряды вскоре вышли в тыл к грекам. Командовавший сухопутными силами греков спартанский царь Леонид, узнав о предательстве, решил отпустить большинство союзных отрядов, чтобы сберечь основные силы для будущих сражений. Сам же Леонид во главе отряда из трехсот спартанских гоплитов выполнил свой воинский долг до конца. В ходе неравного боя погибли все спартанцы. Путь в Среднюю Грецию для персидских войск был открыт.
Получив известие о падении Фермопил, союзники потребовали, чтобы греческий флот покинул мыс Артемисий, и сами отошли на юг. На Истме срочно возводились укрепления. В это время персы уже подошли к Аттике. Фемистокл понимал, что, пока у афинян будет военный флот, потеря города не станет роковой для них. Началась эвакуация женщин, детей и стариков на корабли, которые доставляли их на соседние острова Эгину и Саламин. Афины были захвачены персами. Горстка защитников, укрепившаяся на Акрополе, погибла в неравном бою. В огне пожара были уничтожены храмы богов, другие общественные сооружения, жилища горожан. От цветущего некогда города остались лишь развалины.
Греки, не желая в этих условиях рисковать своим ополчением, выбрали тактику обороны на суше и наступления на море. Союзный флот сосредоточился в узкой бухте между побережьем Аттики и островом Саламин. Он состоял из 380 кораблей, из которых 147 были построены афинянами. Это были современные для того времени военные корабли, приспособленные для ведения активных боевых действий.
Ксеркс двинул свои корабли к Саламинской бухте, чтобы блокировать греческий флот и лишить греков надежд на продолжение сопротивления. Персидский царь, уверенный в победе своих флотоводцев, приказал воздвигнуть себе трон на берегу, чтобы с холма наблюдать гибель противника.
Легким и быстроходным греческим кораблям под командованием Фемистокла противостояла персидская эскадра, состоявшая почти из тысячи громоздких и неповоротливых судов. В жестокой схватке большая часть персидского флота была уничтожена. Оставшиеся корабли в панике бросились в бегство, но здесь их ожидала засада. Поражение персов было полным. Ксеркс, лишившись своих лучших воинов и всего флота, опасался того, что греки могут направиться к Геллеспонту и разрушить мосты, обрекая тем самым на гибель его сухопутную армию. Поэтому он начал отвод своей армии в Северную Грецию и затем во Фракию, спеша защитить переправу через пролив. Но лишь незначительные остатки его войск сумели добраться до нее. Многие персидские солдаты погибли в засадах, устроенных греками на пути к отступлению, многие умерли от голода.
Сразу же после Саламинской битвы Мардоний, инициатор похода на Грецию, уговорил персидского царя оставить его с частью войска для контроля над захваченными греческими территориями. После зимовки в Фессалии войска Мардония вновь заняли Аттику. Афиняне, оставшиеся в одиночестве, опять были вынуждены спасаться бегством на Саламин. Но вскоре им на помощь выступили спартанцы. Появление столь внушительного подкрепления заставило Мардония покинуть Аттику и отступить в Беотию. Здесь, у местечка Платеи, в 479 г. до н. э. войска Мардония были полностью разбиты, а сам он погиб в бою. Поражение персов при Платеях было закреплено греками в этом же году в морской битве у мыса Микале, близ Милета.