The easiest way to do it, that I have found.. Apply the System.Xml.Serialization.XmlArray
attribute to it.
[System.Xml.Serialization.XmlArray] //This is the part that makes it work
List<object> serializableList = new List<object>();
XmlSerializer xmlSerializer = new XmlSerializer(serializableList.GetType());
serializableList.Add(PersonList);
using (StreamWriter streamWriter = System.IO.File.CreateText(fileName))
{
xmlSerializer.Serialize(streamWriter, serializableList);
}
The serializer will pick up on it being an array and serialize the list's items as child nodes.