In C#, constructor is a special method which is invoked automatically at the time of object creation. It is used to initialize the data members of new object generally. The constructor in C# has the same name as class or struct.
There can be two types of constructors in C#.
A constructor which has no argument is known as default constructor. It is invoked at the time of creating object.
using System;
   public class Employee
    {
        public Employee()
        {
            Console.WriteLine("Default Constructor Invoked");
        }
        public static void Main(string[] args)
        {
            Employee e1 = new Employee();
            Employee e2 = new Employee();
        }
    }Let's see another example of default constructor where we are having Main() method in another class.
using System;
   public class Employee
    {
        public Employee()
        {
            Console.WriteLine("Default Constructor Invoked");
        }
    }
   class TestEmployee{
       public static void Main(string[] args)
        {
            Employee e1 = new Employee();
            Employee e2 = new Employee();
        }
    }A constructor which has parameters is called parameterized constructor. It is used to provide different values to distinct objects.
using System;
   public class Employee
    {
        public int id; 
        public String name;
        public float salary;
        public Employee(int i, String n,float s)
        {
            id = i;
            name = n;
            salary = s;
        }
        public void display()
        {
            Console.WriteLine(id + " " + name+" "+salary);
        }
   }
   class TestEmployee{
       public static void Main(string[] args)
        {
            Employee e1 = new Employee(101, "Sonoo", 890000f);
            Employee e2 = new Employee(102, "Mahesh", 490000f);
            e1.display();
            e2.display();
        }
    }