I have been able to serialize an ienumerable this way Code: [XmlArray("TRANSACTIONS")] [XmlArrayItem("TRANSACTION", typeof(Record))] public IEnumerable Records { get { foreach(Record br in _budget) { yield return br; } } } However, I realised that now I need a dictionnary containing a collection (Dictionary (Record collection implements ienumerable)))? how can i achieve that? Thank you