var query = from a in AppDomain.CurrentDomain.GetAssemblies() from t in a.GetTypes() where t.IsAbstract && !t.IsSealed // exclude static classes && !t.GetMethods().Any(m => m.IsAbstract) select t;