using System.Xml.Serialization;
public static void Main()
var testXMLStructure = new TestXMLStructure() {
Console.WriteLine($"Test String with non-ASCII characters: {testXMLStructure.TestString}");
Console.WriteLine("--------------");
var stringWriter = new System.IO.StringWriter();
var serializer = new XmlSerializer(typeof(TestXMLStructure));
serializer.Serialize(stringWriter, testXMLStructure);
Console.WriteLine(stringWriter.ToString());
Console.WriteLine("--------------");
var stringReader = new System.IO.StringReader(stringWriter.ToString());
var testXMLStructure2 = serializer.Deserialize(stringReader) as TestXMLStructure;
Console.WriteLine($"Re-serialised String with non-ASCII characters: {testXMLStructure2.TestString}");
public class TestXMLStructure
public string TestString;