N’arrêtez jamais d’apprendre !
On écrit “fils” mais on prononce “fi” à cause de l’évolution historique du mot et d’une vieille consonne qui a disparu à l’oral.
Le mot “fils” vient du latin “filius”. Au fil du temps, la prononciation a changé : le “l” s’est adouci puis s’est tu, et le “s” final n’a gardé qu’un rôle grammatical à l’écrit.
Autrefois, on prononçait bien toutes les lettres, mais aujourd’hui, par usage, on dit simplement “fi” (le “l” et le “s” sont muets). L’orthographe, elle, est restée fidèle à l’ancienne forme, ce qui explique cette différence frappante entre ce qu’on voit et ce qu’on entend.
Le mot “fils” est l’un des rares en français où le “s” final se prononce… mais seulement dans “fils adoptif” ou “fils aîné” : on dit alors “filz” !