Ваш десериализатор JSON не работает; \ uXXXX должен быть превращен в правильные символы.
Чтобы сделать это самостоятельно, используйте эту функцию
// Turns every occurrence of \uXXXX into a proper character
void UnencodeJSONUnicode(string str) {
return Regex.Replace(str,
@"\\u(?<value>[0-9a-f]{4})",
match => {
string digits = match.Groups["value"].Value;
int number = int.Parse(digits, NumberStyles.HexNumber);
return char.ConvertFromUtf32(number);
});
}
(непроверенный код; в настоящий момент у меня нет VS). Возможно, неплохо будет обработать некоторые исключения)