C#の最適化は可愛いレベルだからそこまで気にしなくてもとは思う
c++なんて最適化のレベルを上げるとmemset()でメモリクリアしようとしても勝手にmemset()自体が消されてしまう
しかもその判定がおかしい
これは最適化なのかどうかすら怪しい

セキュリティ上問題ある場合は特定の命令を使って消さなければならないとか普通じゃない