The difference is, that in your first code snippet you're calling the parameterless base class constructor, whereas in your second code snippet you're calling the base class constructor with a parameter.
Your base class might be defined as follows:
class qwe{ public qwe(){ /* Some code */ } public qwe(AnotherClassSomeAnotherclass ac){ /* Some other code */ } } The default constructor for your abc class looks exactly like the following:
class abc{ public abc() : base() {} }