Одной из проблем, с которыми вы сталкиваетесь при использовании переключателя, является использование строк, таких как «Bob», это вызовет намного больше циклов и строк в скомпилированном коде. Сгенерированный IL должен будет объявить строку, установить для нее значение «Bob», а затем использовать ее в сравнении. Поэтому, учитывая это, ваши операторы IF будут выполняться быстрее.
PS. Пример Aeon не сработает, потому что вы не можете включить типы. (Нет, я не знаю почему, но мы попробовали это, но это не работает. Это связано с переменным типом)
Если вы хотите проверить это, просто создайте отдельное приложение и создайте два простых метода, которые делают то, что написано выше, и используют что-то вроде Ildasm.exe, чтобы увидеть IL. Вы заметите намного меньше строк в IL метода Method IF.
Ildasm поставляется с VisualStudio ...
Страница ILDASM - http://msdn.microsoft.com/en-us/library/f7dy01k1(VS.80).aspx
Учебник по ILDASM - http://msdn.microsoft.com/en-us/library/aa309387(VS.71).aspx