Хочу заметить, что CString в WTL вельми убогий. Такое ощущение, что его писал практикант. Нет никакого резервирования для последующей конкатенации, т.е каждый раз, как к строке добавляется хотя бы 1 символ, происходит перераспределение памяти, вдобавок само перераспределение всегда выполняется выделением нового блока, копированием строки и затем освобождением старого, хотя даже без резервирования во многих случаях можно было бы сделать realloc и возможно обойтись без копирования старой строки (если за уже выделенным куском памяти нашелся свободный блок). Я мерил скорость работы строк stl, MFC, WTL и это подтвердилось — WTL в разы медленнее. Для себя я написал шаблонную строку с интерфейсом как у CString. Скорость получилась примерно как MFC-ая, но при определенных настройках обгоняет всех :). stl — строки — рулез. Действительно очень быстрые и хорошо работают с памятью. Правда с windows у них отношения холодные.