Pada musim panas tahun 479 SM, pasukan besar Yunani bergerak dari Peloponessos. Pasukan Persia mundur ke Boiotia dan mendirikan pertahanan di dekat Plataia. Namun, pasukan Yunani tak mau menyerang perkemahan Persia karena tempat tersebut akan menguntungkan kavaleri Persia. Akibatnya, terjadi kebuntuan selama sebelas hari. Lama-kelamaan supai pasukan Yunani terganggu sehingga barusan tempur mereka terpecah. Mardonios menyadari ini dan mengerahkan seluruh pasukannya untuk menyerang pasukan Yunani. Akan tetapi, pasukan Yunani balas menyerang dan pada akhirnya mengalahkan Persia, sementara Mardonios sendiri terbunuh.
Sejumlah besar pasukan Persia terperangkan di kamp mereka dan akhirnya dibantai. Selain di Plataia, Persia juga kemudian mengalami kekalahan dalam Pertempuran Mykale. Semua kekalahan itu secara efektif menghentikan invasi Persia.