Unicode o ansi para el desarrollo de programas de Windows
Por supuesto UNICODE. Las razones son:
1) El programa UNICODE puede mostrar idiomas de diferentes nacionalidades al mismo tiempo;
2) El uso de las funciones ANSI de la serie WINDOWS NT es más lento que UNICODE. Por ejemplo, SetWindowText en realidad tiene dos versiones: SetWindowTextA y SetWindowText W. ANSI usa el primero, y el primero no hace nada, es solo un remitente, y los parámetros se convierten y se entregan al segundo.