public class Program { static void Main() { var t = new Foo(); var asMethod = t.GetType().GetMethod("Bar"); var asInterface = asMethod.MakeGenericMethod(typeof(object)); var asMock = asInterface.Invoke(t, null); } } public class Foo { public virtual Helper Bar() { return new Helper(); } } public class Helper { }