public delegate void AddDelegate(int a, int b);
public delegate void MultiDelegate(int a, int b);
public void Add(int x, int y){
Console.WriteLine("The sum of {0} and {1} is {2}", x, y, x+y);
public void Multiply(int x, int y){
Console.WriteLine("The product of {0} and {1} is {2}", x, y, x*y);
public static void Main()
Program obj = new Program();
AddDelegate adel = new AddDelegate(obj.Add);
Console.WriteLine("Single Cast Delegate");
Console.WriteLine("\n\nMulticast Delegate");
MultiDelegate mdel = new MultiDelegate(obj.Add);