using System;
using System.Xml.Linq;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public class Inner {
public string Name {get;set;}
}
public class Outer {
public List<Inner> Inners {get;set;}
public static void Main()
var outer = new Outer() { Inners = new List<Inner>() { new Inner() {Name ="Cheese"}, new Inner() {Name = "poof"} }};
var asd = new XDocument(new XElement("RootElement", outer.Inners.Select(s => new XElement("AnElementName", s.Name) )));
Console.WriteLine(asd.ToString());