Getting all types that implement an interface
Mine would be this in c# 3.0 🙂 var type = typeof(IMyInterface); var types = AppDomain.CurrentDomain.GetAssemblies() .SelectMany(s => s.GetTypes()) .Where(p => type.IsAssignableFrom(p)); Basically, the least amount of iterations will always be: loop assemblies loop types see if implemented.