La differenza è che $_GET viene usato per recuperare le variabili passate via url (metodo get), mentre $_POST per quelle passate, appunto via post, cioé che vengono salvate in una sorta di buffer di memoria e non aggiunte all'indirizzo della pagina.

Se vuoi sapere il perché è meglio utilizzare il nuovo metodo per recuperare le variabili, leggiti la Guida di Sicurezza in PHP.
È stata davvero utile, almeno per me!