SecondLanguage lets you use Gettext files in .NET without a lot of hassle.
It can read and write both .mo and .po, and fully supports message contexts and plural forms.
A C-style printf formatter is included so you don't have to use .NET-specific translations.