Чтобы прояснить это, оптимизация выполняет встроенные функции и устраняет некоторые переменные. При отладке оптимизированного кода в среде IDE вы не получите такой большой помощи, как обычно, поскольку некоторый код на самом деле больше не существует. Так что для отладки выключите если (по умолчанию).
В таких языках, как оптимизация C ++, иногда (часто) возникает критический побочный эффект, который необходимо учитывать. Насколько я знаю, это не так или почти не так для C #, поэтому с точки зрения правильности вашего кода, вероятно, не имеет значения, оптимизируете ли вы или нет.