.htm or .html extension - which one is correct and what is different?

Neither is wrong, it's a matter of preference. Traditionally, MS software uses htm by default, and *nix prefers html.

As oded pointed out below, the .htm tradition was carried over from win 3.xx, where file extensions were limited to three characters.


Mainly, the number of characters is different.

".htm" smells of Microsoft operating systems where the file system historically limited file name extensions (the part of the file name after the dot) to 3 characters.

".html" smells of Un*x operating systems that did not have this limitation and that were used for all the serious internet work at the time.

Pragmatically, the two are equivalent.

The difference is cultural. ".html" is regarded by some as more correct. The same people tend to look down at Microsoft operating systems and regard ".htm" as unsightly reminder of their limitations.