using System.Reflection;
. .
string input = Console.ReadLine();
MethodInfo method = typeof(Program).GetMethod(input);
if (method != null) {
method.Invoke(null, null);
} else {
Console.WriteLine("Нет такого метода");
}
В этом примере предполагается что все методы открытые (public), статические (static), не принимают аргументов и объявлены в классе "Program" (главный класс приложения, по-умолчанию). Подробнее:
Type.GetMethodMethodInfo.Invoke
public void method1()
{
Console.Write("Hello");
}
public void method2()
{
Console.Write("2");
}....
как я понимаю нужно использовать using reflection .