Ripeto, non ho ancora studiato l'argomento, comunque:

lascia stare per ora quello che fai con build in VB, quando viene compilato il codice viene tradotto in IL, in seguito il Jit (Just-in-time compiler) converte il codice in codice nativo. Pero' non tutto il codice contenuto nell'IL viene compilato quando viene eseguito per la prima volta, ma è ogni metodo contenuto che viene compilato la prima volta che viene utilizzato (le chiamate successive utilizzano la parte compilata), questo evita la compilazione di codice mai chiamato. Quindi la compilazione avviene man mano che viene eseguito. Esiste il compilatore PreJIT che invece esegue la compilazione per intero dell'IL, salvandola, in questo modo non ci sarà bisogno di ricompilare ogni volta ed ogni volta che si accede ad un metodo.

Dovrebbe esserci un tool, ngen.exe credo, per la precompilazione dell'IL.