>>787
デリゲートを書くときタイピング数を減らそうとして使う

https://msdn.microsoft.com/ja-jp/library/bb882516.aspx
delegate void TestDelegate(string s); // こーやって定義して…
static void M(string s) {Console.WriteLine(s);} // こーいうメソッドがあるとき
TestDelegate testDelA = new TestDelegate(M); // かつてはこう。あらかじめ定義したメソッドを使って初期化
TestDelegate testDelB = delegate(string s) { Console.WriteLine(s); }; // C#2.0からは匿名メソッド使ってラク
TestDelegate testDelC = (x) => { Console.WriteLine(x); }; // C#3.0からはラムダ式でさらにラク