俺の今まで辿った流れを言うと、
1.System.Reflection.Emitを駆使してやろうとした。
2.C#コードの解析方法わかんねー!ってなって、CodeDomを駆使してやろうとした。
3.アセンブリが出力されるのか・・・、やっぱ1でやりたいなって思って今に至る。
ちなみにCodeDomを駆使してやろうとしたときのコードが↓。

string input = Console.ReadLine();
StringBuilder sb = new StringBuilder();
sb.Append("using System;");
sb.Append("namespace test");
sb.Append("{");
sb.Append("public static class TestClass");
sb.Append("{");
sb.Append("public static object TestMethod()");
sb.Append("{");
sb.Append("return" + input);
sb.Append("}");
sb.Append("}");
sb.Append("}");
StringReader sr = new StringReader(sb.ToString());
Microsoft.CSharp.CSharpCodeProvider provider = new Microsoft.CSharp.CSharpCodeProvider();
CompilerParameters parameters = new CompilerParameters();
parameters.GenerateExecutable = false;
parameters.OutputAssembly = @"C:\test.dll";
parameters.GenerateInMemory = false;
parameters.TreatWarningsAsErrors = false;
CompilerResults result = provider.CompileAssemblyFromSource(parameters, sb.ToString());
if (result.Errors.Count == 0)
{ // 実行 }

このコードとさっき晒したコードをうまく組み合わせればいいのか・・・?