UTF-16 se ti zdá pro práci s řetězci neefektivní a raději bys používal UTF-8? A to ti nevadí, že nepůjde přistupovat k UTF-8 řetězci znak po znaku, ale vždy se to bude muset kódovat a dekódovat, protože všechny funkce pracují v UTF-16?
Jediná věc je velikost. Ale nic ti přece nebrání mít uloženo v ANSI, pokud to vyhovuje a unicode opravdu nepotrebujes.