Recently I developed a performance tester console application, with no UI, with the help of a IoC containter (Castle-Windsor-Microkernel). This library enabled me to let the user choose which test(s) to run, simply by changing the configuration file.
Have I realized what IoC containers are about? I'm not sure. Even Joel said here on SO that IoC are difficult to understand.
From my example, what do you conclude? Am I using IoC container for exactly what they were designed for? Or I am just using one of its secondary features?