Today, dinner almost universally refers to the evening meal. But it has had a long etymological history to get to that point.
Those with older relatives might have noticed them say “dinner” to refer to the midday meal—what we would usually call “lunch” today. It’s rather archaic today, but it used to be the dominant usage.
It comes to modern English from Old French disner (via Middle English dyner), which originally meant “breakfast”, but later meant “lunch”. Disner is evolved into modern French dîner, suggesting the same more recent history has taken place in that language as in English.
Disner comes, ultimately, from Latin *disiūnō, meaning “to break the fast”.
So, depending on when you are, “dinner”, and its etymological ancestors, could have meant breakfast, lunch, or dinner.
Portuguese got something similar:
So, Latin had the verb ieiento, ieientare “I breakfast, to breakfast”. In Late Latin times it lost the first ie- due to deduplication (
haplogyhaplology), eventually becoming *iantare “to lunch”. Nowadays it’s “jantar” /ʒã.'ta(ɾ)/ or “janta” /'ʒã.ta/, and it refers to dinner.The Latin word for dinner (cena) got inherited as ceia. It’s uncommon-ish but still understood; some take it as a synonym, some for a post-dinner meal (for example, the light soup some drink right before going to bed, or that past-midnight Christmas feast).
Then you got “almoço” for lunch. It’s from the Latin verb admordeo “I bite into”. I feel like it originally meant something you snack on. In the meantime, English lunch got borrowed as lanche, and it refers to a light snack (usually late afternoon).
Then for breakfast… well. It’s a mess: