constructors are executed in the order from top to bottom I.E. base\'s first followed by derived one. This arangement is based on an important OOP assurance that an object (
Why are field initializers of a derived class executed before the base class field initializers?
Good question. I answered your question in these blog posts from 2008:
https://docs.microsoft.com/en-us/archive/blogs/ericlippert/why-do-initializers-run-in-the-opposite-order-as-constructors-part-one
https://docs.microsoft.com/en-us/archive/blogs/ericlippert/why-do-initializers-run-in-the-opposite-order-as-constructors-part-two