SharePoint SPWeb object Bad Language
If you are running your C# code in different thread (e.g.: async EventReceivers or TimerJob), sometimes you may notice, that your SPWeb object is initialized in different language. You can use SPUtility.SetThreadCulture method to set CurrentThread.CurrentUICulture and CurrentThread.CurrentCulture.