Da un punto di vista pratico non vi è nessuna differenza. Entrambe le estensioni (.html e .htm) identificano un documento formattato in HTML.
La ragione dell’esistenza di due estensioni equivalenti è da ricercare nel passato: i vecchi sistemi operativi a 8 bit (come ad esempio Windows 3.1) accettavano unicamente file aventi estensione di massimo 3 caratteri. Per questo motivo nacque l’estensione .htm (un file .html non sarebbe stato riconosciuto come valido in quanto, come detto, l’estensione non poteva essere composta da 4 caratteri).
Ad oggi le due estensioni sono perfettamente equivalenti e sono entrambe riconosciute dai moderni OS come file HTML, tuttavia è da segnalare che l’utilizzo dell’estensione .htm è in disuso e compare, quasi esclusivamente, all’interno di vecchi siti web.