とにかく最初に起動する .NET アプリケーションは時間がかかわるわけ

時折話にあがるんですが、最初の1つって時間かかるんですよね。
JIT and Run / MSDN Magazine 2005 Mayより、Microsoft .NET Framework の CLI の実装では、稼動している CLR 1つにつき、グローバルなアプリケーションドメインが2個存在するようです。つまり、標準的なデフォルトアプリケーションドメインしか使用しない .NET アプリケーションであっても、CLR としては3つのアプリケーションドメインが稼動していることになります。
この、グローバルなアプリケーションドメインは、いくつの .NET アプリケーションが稼動しても2つの状態から変化せず、すべての .NET アプリケーションが終了しても残り続けるため、このグローバルなアプリケーションドメインが破棄されない限りはアプリケーション起動が高速化したように思えるようです。

物臭なもので

.NET Framework がインストールされるとき、Windows の RunService みたいなところに埋め込んでもいいようなもんですが。*1

*1:それはデフォルトでCLRをロードするようなもので、設定変更でロードしなくできるような