tl;dr(まとめ) C#のデリゲートは、 引数として関数を1つ受けとるデータ型(参照型) の一種です。 C#には他にもnewキーワードで生成するデータ型としてクラス、構造体があります。 C#のデリゲートは、+, - 演算子を持ち、一つのデリゲート変数に複数のデリゲートを登録することが出来、 マルチキャスト と呼ばれる機能を持ちます。 (これが、C#のデリゲートの特筆すべき機能だと思います。) 書いたこと デリゲートの宣言 デリゲートの生成と実行 newキーワドによる生成 匿名メソッドによる生成 ラムダ式による生成 デリゲートの+-演算 (マルチキャスト) デリゲートの宣言