There's basically two technologies out of the box in .NET that will allow you to create XML. In both cases, you won't get around writing quite a bit of code.
1) The XmlDocument approach, e.g. the XML DOM based way of doing things. You create a XmlDocument, create nodes, set attributes, create child nodes and so forth, and save all to disk in the end.
Pros: works on .NET 1.x and up, is quite widespread and well-known
Cons: is a bit "clunky", keeps you whole XML structure in memory
See more info in the MSDN docs and countless articles and blog posts on the web
2) Then there's the newer Linq-to-XML approach, where you create your document using Linq statements. This is available in .NET 3.5 and up only, and some folks love it, other hate it with a lot of passion :-)
Pros: if you like LINQ, it feels quite natural and more "direct" than the XML DOM approach
Cons: only on .NET 3.5 and up
See some articles and blog posts on the topic:
Certainly lots more out there - just bing or google for "linq to xml".