Рассматривали ли вы сериализацию в JSON вместо XML?
Json.NET имеет действительно мощный и гибкий сериализатор, который не имеет проблем с Hashtables / универсальными словарями и не требует каких-либо особых атрибутов. Я знаю, потому что я написал это:)
Это дает вам кучу контроля через различные опции на сериализаторе и позволяет вам переопределить, как тип сериализуется, создав для него JsonConverter.
По моему мнению, JSON более удобочитаем, чем XML, и Json.NET дает возможность писать JSON с хорошим форматированием.
Наконец, проект с открытым исходным кодом, так что вы можете перейти к коду и внести изменения, если вам нужно.