This entry in the BCL Team Blog gives a nice overview: "Regular Expression performance".
In short, there are three types of regex (each executing faster than the previous one):
interpreted
fast to create on the fly, slow to execute
compiled (the one you seem to ask about)
slower to create on the fly, fast to execute (good for execution in loops)
pre-compiled
create at compile time of your app (no run-time creation penalty), fast to execute
So, if you intend to execute the regex only once, or in a non-performance-critical section of your app (i.e. user input validation), you are fine with option 1.
If you intend to run the regex in a loop (i.e. line-by-line parsing of file), you should go with option 2.
If you have many regexes that will never change for your app and are used intensely, you could go with option 3.