Editable - XmlDocument Class

Pretty much a tree structure that represents your XML as Objects. Hence Document Object Model (DOM).

Create Document

XmlDocument document = new XmlDocument();  

Populate Document

// From a file
document.Load("books.xml");  

// From an object
var document = new XmlDocument();
var navigator = document.CreateNavigator();

if (navigator == null) return;

using (var writer = navigator.AppendChild())
{
    var serializer = new XmlSerializer(typeof(TRoot));
    serializer.Serialize(writer, source);
}