よくわからないから・・・という理由で、CultureInfo("ja") を記述すると危険です。

OSの設定に影響されることなく

10000 を \10,000 で表示

日付  を 20071210日 で表示

したい場合、

Imports System.Threading

 

・・・

'使用するカルチャを設定

Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("ja-JP")

'カルチャーにあわせてフォーマット

Dim msg As String = String.Format("{0:C} {1:D} {2}", _

    10000, Date.Now, CultureInfo.CurrentCulture.ToString())

'表示

MessageBox.Show(msg)

ってな感じのコードで実現できますね。

結果の MSG の値は
¥10,000 2007年12月10日 ja-JP

になります。

で・・・・・

CultureInfo("ja") にすると、どうなるでしょうか?

残念ながら、例外になって、おちます。

"カルチャ 'ja' はニュートラル カルチャです。フォーマットや解析に使用できません、スレッドの現在のカルチャとして設定することもできません。"

ニュートラル カルチャ ってのは、「日本語圏」というニュアンスですね。
”en” だと、「英語圏」なので、イギリス、アメリカ・・・ といろいろあると・・・

というわけで、フォーマットを使いたい場合は、固有カルチャーをきっちり指定しないとまずいですね。

簡単に
CultureInfo("ja") と CultureInfo("ja-JP") の違い 

  CultureInfo("ja") CultureInfo("ja-JP")
CompareInfo                    CompareInfo - 17 CompareInfo - 1041
DisplayName                    日本語 日本語 (日本)     
EnglishName                    Japanese Japanese (Japan)  
IsNeutralCulture               True           False             
IsReadOnly                     False              False             
LCID                           17 1041
Name                           ja ja-JP             
NativeName                     日本語 日本語 (日本)     
Parent                           ja
TextInfo                       TextInfo - 1041 TextInfo - 1041   
ThreeLetterISOLanguageName     jpn jpn               
ThreeLetterWindowsLanguageName JPN JPN               
TwoLetterISOLanguageName       ja ja                

ついでに、いろいろ勉強したいひとは、以下を参照
ステップ 7 ハンズオン:
Visual Studio .NET 2005 を使用して、Windows アプリケーション UI の国際化を行う
http://www.microsoft.com/japan/msdn/thisweek/step7/basic2/globalization_vs/