Looks pretty good to me. But if you are really that concerned about optimisation, then try compiling this and any alternatives you have, and then using ildasm or Reflector to look at the IL generated to see for sure.
David M
2010-01-06 20:00:37