using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
class Program
{
// Returns a dictionary of ISO alpha‑2 codes → English country names
static Dictionary<string, string> GetAllCountries() {
var countries = new Dictionary<string, string>();
// Loop through all specific cultures
foreach (var culture in CultureInfo.GetCultures(CultureTypes.SpecificCultures)) {
var region = new RegionInfo(culture.Name);
// Avoid duplicates
if (!countries.ContainsKey(region.TwoLetterISORegionName)) {
countries.Add(region.TwoLetterISORegionName, region.EnglishName);
}
}
return countries;
}
static void Main()
{
var countries = GetAllCountries();
// Print sorted by country name
foreach (var entry in countries.OrderBy(c => c.Value)) {
Console.WriteLine($"{entry.Key}: {entry.Value}");
}
}
}
/*
run:
AF: Afghanistan
AL: Albania
DZ: Algeria
AR: Argentina
AM: Armenia
AU: Australia
AT: Austria
AZ: Azerbaijan
BH: Bahrain
BD: Bangladesh
BY: Belarus
BE: Belgium
BZ: Belize
BO: Bolivia
BA: Bosnia & Herzegovina
BW: Botswana
BR: Brazil
BN: Brunei
BG: Bulgaria
KH: Cambodia
CM: Cameroon
CA: Canada
CL: Chile
CN: China
CO: Colombia
CD: Congo - Kinshasa
CR: Costa Rica
CI: C?te d?Ivoire
HR: Croatia
CU: Cuba
CZ: Czech Republic
DK: Denmark
DO: Dominican Republic
EC: Ecuador
EG: Egypt
SV: El Salvador
ER: Eritrea
EE: Estonia
ET: Ethiopia
FO: Faroe Islands
FI: Finland
FR: France
GE: Georgia
DE: Germany
GR: Greece
GL: Greenland
GT: Guatemala
HT: Haiti
HN: Honduras
HK: Hong Kong SAR China
HU: Hungary
IS: Iceland
IN: India
ID: Indonesia
IR: Iran
IQ: Iraq
IE: Ireland
IL: Israel
IT: Italy
JM: Jamaica
JP: Japan
JO: Jordan
KZ: Kazakhstan
KE: Kenya
KW: Kuwait
KG: Kyrgyzstan
LA: Laos
LV: Latvia
LB: Lebanon
LY: Libya
LI: Liechtenstein
LT: Lithuania
LU: Luxembourg
MO: Macau SAR China
MK: Macedonia
MY: Malaysia
ML: Mali
MT: Malta
MX: Mexico
MD: Moldova
MC: Monaco
MN: Mongolia
ME: Montenegro
MA: Morocco
MM: Myanmar (Burma)
NP: Nepal
NL: Netherlands
NZ: New Zealand
NI: Nicaragua
NG: Nigeria
NO: Norway
OM: Oman
PK: Pakistan
PA: Panama
PY: Paraguay
PE: Peru
PH: Philippines
PL: Poland
PT: Portugal
PR: Puerto Rico
QA: Qatar
RE: R?union
RO: Romania
RU: Russia
RW: Rwanda
SA: Saudi Arabia
SN: Senegal
RS: Serbia
SG: Singapore
SK: Slovakia
SI: Slovenia
SO: Somalia
ZA: South Africa
KR: South Korea
ES: Spain
LK: Sri Lanka
SE: Sweden
CH: Switzerland
SY: Syria
TW: Taiwan
TJ: Tajikistan
TH: Thailand
TT: Trinidad & Tobago
TN: Tunisia
TR: Turkey
TM: Turkmenistan
UA: Ukraine
AE: United Arab Emirates
GB: United Kingdom
US: United States
UY: Uruguay
UZ: Uzbekistan
VE: Venezuela
VN: Vietnam
YE: Yemen
ZW: Zimbabwe
*/