Я думаю, вам лучше использовать динамический язык, совместимый с .NET, например IronPython или IronRuby .Они в значительной степени легко интегрируются с C # /. NET и фактически предназначены для обеспечения сценариев времени исполнения.
Тривиальный пример использования IronPython из C # Джона Скита в глубине :
// the python code
string python = @"
text = 'hello'
output = input + 1
";
// setup the scripting engine
ScriptEngine engine = Python.CreateEngine();
ScriptScope scope = engine.CreateScope();
scope.SetVariable("input", 10);
engine.Execute(python, scope);
// the results
Console.WriteLine(scope.GetVariable("text"));
Console.WriteLine(scope.GetVariable("input"));
Console.WriteLine(scope.GetVariable("output"));
Нет необходимости говорить, что сценарии могут использовать библиотеку базовых классов .NET и любые дополнительные методы, которые вы им предоставляете.