There is a bit of confusion about the System.Text.Encoding names, primarily "Which name do I use for my Encoding?"
The Encoding class has 3 hame properties: BodyName, WebName and HeaderName, and the EncodingInfo objects returned by Encoding.GetEncodings have an additional Name property. The examples in the MSDN documentation list a table.
EncodingInfo EncodingName CodePage BodyName HeaderName WebName EncodingNameshift_jis 932 iso-2022-jp iso-2022-jp shift_jis Japanese (Shift-JIS)windows-1250 1250 iso-8859-2 windows-1250 windows-1250 Central European (Windows)windows-1251 1251 koi8-r windows-1251 windows-1251 Cyrillic (Windows)Windows-1252 1252 iso-8859-1 Windows-1252 Windows-1252 Western European (Windows)windows-1253 1253 iso-8859-7 windows-1253 windows-1253 Greek (Windows)windows-1254 1254 iso-8859-9 windows-1254 windows-1254 Turkish (Windows)csISO2022JP 50221 iso-2022-jp iso-2022-jp csISO2022JP Japanese (JIS-Allow 1 byte Kana)iso-2022-kr 50225 iso-2022-kr euc-kr iso-2022-kr Korean (ISO)
So if you're "supposed" to use WebName, what's the BodyName and the HeaderName for?
The idea behind the Header and Body names are to support email applications. Not all encodings behave well in the body or header of an email, so these encodings shoudl be used instead. For example, if you have the Encoding from Encoding.GetEncoding("iso-2022-kr") at the bottom of the list, then the WebName would allow you to round trip that name, however if you had data that you wanted to encode in the Header of an e-mail, then you should call Encoding.GetEncoding(myEncoding.HeaderName) and use that encoding for the header data.
The key is that the Header and Body names describe which encoding to use to support a similar set of characters to the Encoding in question. Of course I'd recommend using UTF-8 &/or worst case UTF-7 whenever possible in e-mail. For that matter I'd recommend using Unicode whenever possible, but sometimes older protocols or other limitations prevent that.