Hi Alfredo,
> Other purpose of the Language field(How does the field actually work.):
We can enable additional language packages (in Advanced settings > System > Administration > Languages) to show entities and fields in different language, and text/label of some OOB optionset fields will also be translated.
If we enable French language package, then the OOB "Preferred Method of Contact" field will has its French version label:
when we set Language field of marketing email to French, then "Preferred Method of Contact" will display as Téléphone;
when Language field is set English, then the preferred contact method will display as Phone again.
when Language field is set to other languages, the preferred contact method will display number value directly.
In a word, Language field will work if we enable corresponding language package, the more packages we enable, the more languages of label are supported.
However, to add multiple language support to our own custom optionset field, we need to:
1. Enable the corresponding language package in system settings.
2. Create a solution, then add the optionset field into the solution, then export translation xml file.
3. Edit the xml file to add label in other languages.
The translation process is a bit complicated and not easy to describe it in short words, you could refer to any of following articles for more details about how to do translation:
https://www.inogic.com/blog/2016/07/multi-language-support-for-custom-solutions-in-dynamics-crm-2/
https://dynamics.mittermair.pro/2018/02/11/translations-in-dynamics-crm-part-i/
https://www.inkubit.com/en-us/blog/microsoft-dynamics-365/how-to-translate-associated-entities-with-easy-translator/
> For the requirement of your client:
Content of marketing email is supported to be shown in different languages with conditional statements of advanced dynamic expression.
https://docs.microsoft.com/en-us/dynamics365/marketing/dynamic-email-content#conditional-statements-and-comparisons

As the sample code shows, you could create a custom field to save language preference of contact, then display different languages based on this field.
Regards,
Clofly