バックグラウンドで実行とかいうのやると動かなくなるorz

それはともかく質問
C++をちょっとかじった身でC#に入りました。
とりあえずデザイナとデフォのフォームのコンストラクタに書いてあったInitializeなんちゃらという辺りのとこも把握
エントリポイントはあえて言うならデフォでいうところのForm1_Loadかというところも把握

C++ですとクラスを宣言定義し、クラスの宣言定義とは別のmain()なんかの中でオブジェクト作ってそいつらを使って・・・という感じですが
C#だとクラスの中でそれを・・・となんだかこんがらがっています

とりあえずForm1_Loadをmain()と考え、Form1クラスの外で色々なクラスを宣言定義していくのがベターなのでしょうか?
要するForm1_LoadをエントリポイントとしてC++ぽくやっていいんでしょうか?

まずC++もかじった程度なのでそこに認識の間違いがあるかもしれないですがorz