How to display the user's preferred language in a User profile page
I think I could answer myself to most of my questions:
1-The Language code field store the initial language of a user... it looks like it can't be changed after all. For my use case, it is an useless field.
2-The Language settings options display the Preferred language widget and the Administration pages language widget. I think that this last widget is there only if you check Account administration pages language setting. in admin/config/regional/language/detection
3-The most important part: How to display the preferred language of a user in the the display user page (/user/xxx)
You can do it with this hook:
function mymodule_entity_base_field_info_alter(&amp;$fields, EntityTypeInterface $entity_type) {
  if ($entity_type-&gt;id() == &quot;user&quot;) {
    $fields['preferred_langcode']-&gt;setDisplayConfigurable('view', TRUE);
  }
}

I really don't know why it is not a default... (don't hesitate to add any information on this point)