I just posted an article on the .NET link about using the Spring.NET core IoC technology to instantiate an application object that contains a list of other objects, and initialize them both using XML. The IoC container takes care of everything. For more info on Spring, check out the Spring.NET application framework site.