There are a myriad of language settings in Sitecore (both on .config and in the core db) – I sat down and worked out what you edit where; question in red, if anyone’s got a minute to do a bit of research. 🙂
Site language as seen by visitors
To determine what the default language is for visitors accessing your site, change the language attribute on the appropriate site node in web config:
<site name="website" language="en-US" ... >
Sitecore client language
When we say client language, we mean the actual text used in the Sitecore interface – e.g. the word ‘Template Manager’ in the Sitecore menu, or the word ‘Edit’. Client translation files are available here: http://sdn.sitecore.net/Resources/Client_Translations/CMS%20Client%20Translations.aspx
<setting name="ClientLanguage" value="en-US" />
Default content language for author logging into Sitecore
You can determine what language should be selected by default on a per user basis – open the User Manager, edit the user, and change the Default Content Language – e.g. Sven might want Swedish to be his default selection, Maria might want Turkish to be her default selection.
If you have a multi-site instance and want your location in the tree to determine what language is selected, have a look at this blog post: http://blog.boro2g.co.uk/automatically-set-the-language-of-the-content-editor/
You can set a default content language by changing the language attribute on shell:
<site name="shell" ... language="en-US" ... />
There is a per-site attribute called contentLanguage, but that does not seem to affect the default – if anyone has made it work, let me know.
Restricting access to languages
To restrict what languages a user can view, use the Security Editor to deny access to the language items under /System/Languages like you would with any other Sitecore item.