The reason you see this time difference is because the runtime compiles the method to execute before the first call, and when it is called a second time, all that is required to run the method is already compiled. You can use ngen.exe for this task. It compiles il to native exe before execution and reduces startup time.
In your specific scenario, I believe that ngen.exe will be the right tool for the job, as it can be fired as a post build event to compile your builds well in advance and be ready when you need it. If you use PrepareMethod, you will still have a JIT delay on the methods when you run your tests, and not just when they are called.
source share