class è un attributo generico che puoi usare per più oggetti nello stesso documento.
id è il NOME dell'elemento e lo individua sia nei css che in javascript.
La differenza in genere è che class lo usi per una categoria
per esempio
.evidente {font-size:1.5em;color:#ff0000;}
potresti usarlo più volte in un documento per evidenziare del testo.
gli attributi di stile all'id li dai in genere quando esiste una volta sola per esempio il div id="container" (o footer, o altro)