Sia le sessioni che i cookie vengono mantenuti (servono a quello).
Ci sono alcune differenze:
La sessione si chiude quando chiudi il browser, il cookie scade quando hai deciso di farlo scadere.
La sessione è forse un po' più sicura perchè viene prevaletemente gestita lato server, il cookie è un file di testo scritto sulla tua macchina, è visibile e in parte modificabile.
Il cookie è un po' limitato in quanto è una coppia chiave valore, mentre nella sessione puoi inserire quanti valori vuoi (la gestisci come un array associativo).
Un metodo diffuso è usare l'accoppiata cookie (con i dati utente criptati) + sessione.
Ma se non usi un database non ha senso.