Имейте в виду, что у вас нет для использования UTF-16 только потому, что это то, что используют строки .NET. Когда вы создаете этот байтовый массив, вы можете выбрать любую кодировку, которая будет обрабатывать все символы в вашей строке. Например, UTF-8 будет более эффективным, если текст написан на латинице, но он все еще может обрабатывать все известные символы.
Наиболее важной проблемой является то, что независимо от того, какое программное обеспечение декодирует строку base64, необходимо знать, какую кодировку применить к байтовому массиву для воссоздания исходной строки.