I am using MVC in my application, but with a small difference: 4 layers. It contains Model, View, Control and an Orchestrator. This is the main controller, and is the one who says which view controller is active at a time.
Therefore, I must have my entry point calling this Orchestrator class, which will create a controller and this controller will create the view, which will be shown. Whenever the views are closed, the application must stop and finish also.
However, I am not able using Application.Run inside the Main function, in Program.cs to run a class which is not a form. How is it possible to do implement the architecture I wish?
Sounds like you want the overload of Application.Run that takes an ApplicationContext.
The example on that page shows how to use ApplicationContext to exit the app when all of your forms are closed (rather than the default, of exiting when the main form is closed). You should be able to adapt this to your use.