На уровне виндовс это два момента.
Первый момент - для старой файловой системы FAT16 это определенным образом хранящийся атрибут, который относится к имени файла, но не является его частью. В современных файловых системах это просто часть имени файла после последней точки.
Второй - для оболочек в виндовс, расширение указывает на тип файла.
В дос была возможность определить выполняемый файл или не выполняемый,
В виндовс появилась возможность ассоциирования расширения с разными действиями - открыть, открыть определенной программой, открыть определенной программой на редактирование, и др., работает и на уровне проводника и на уровне консольных оболочек (cmd, powershell), ассоциации хранятся в реестре.