In Office 365, every user can change their preferred language through the Office 365 settings.

Except when you are a synced user.

For synced users (your on-premise AD account is synced to Office 365), the language set in the on-premise AD will be used in Office 365 as well. With no way to change the language in Office 365.

Even if you would want to force it with PowerShell, you would get an exception.

set-msoluser -userprincipalname [loginName] -PreferredLanguage "en-US"

The sync is one-way: changes sync from on-premise to Office 365, but not the other way around. Therefore, you cannot make changes to properties of the identity in Office 365. If you want to change a property, such as the preferred language, you should do this in the on-premise AD.

The following PowerShell script needs to be ran against the on-premise AD:

Set-ADUser [loginName] -Replace @{‘preferredLanguage’=”en-US”}

All available language codes can be found here. If no preferred language is set, it will default to English.

As a last optional step, the AADSync can be triggered with PowerShell to speed up the synchronization process:

Start-ADSyncSyncCycle –PolicyType Delta