Вопрос по оптимизации кода. Какой код будет более оптимальным для C#?
Нужно собрать релизную сборку и сравнить IL код. Вполне возможно что это одно и то же. А если различия и будут, то можно говорить только о конкретной версии dotnet framework. IL может изменяться в зависимости от конкретной CLR или конкретной версии framework. Но даже увидев инструкции я бы не стал предполагать, что из этого быстрее, а написал бенчмарк. Потому что все еще и зависит от железа на котором исполняется. 
https://github.com/dotnet/BenchmarkDotNet
PS
Прежде чем заниматься такими микрооптимизациями, нужно понимать, действительно ли это нужно. Если это ради обучения - ок, но если это реальная задача то в 99% случаев узким местом будет не тот код, который вы считаете узким местом. А реальность покажет профилировщик.
Ок. А если вместо функции стоит выражение? Например a = b * c. Есть про такие варианты какие нибудь правила?