The static constructor runs once in the AppDomain just before you first access the class instance. You can use it to initialize static variables.
On the other hand, the default constructor starts every time a new instance of the class is created. in the default constructor, you can initialize non-static instance fields.
source share