В общем, я бы сказал, не беспокойтесь об этом.Однако, если это действительно важно в этом случае, профилируйте его и посмотрите.Без измерения вы никогда не узнаете, какая версия метода действительно будет работать лучше, особенно в вашем реальном случае, так как JIT может оптимизировать один лучше другого и т. Д.
При этом на небольшом уровнеуровень, ответ действительно "это зависит".В вашем случае передача по ref потенциально будет медленнее на x64, так как она делает большую копию (область памяти, которая 64-битная) по сравнению с просто копией 32-битного int.С практической точки зрения это не имеет значения вообще.
Однако, если вы имеете дело с типом большого значения (struct), то передача по ref может быть оптимизацией,Предотвращает полную копию типа значения.
Иногда это значимая оптимизация производительности.Например, многие движки, связанные с 3D, делают это для передачи векторов или матриц, поскольку они могут быть большой структурой.Например, см. Matrix.Multiply в XNA, в котором используются параметры ref и out вместо копирования матриц по значению.Это более оптимизировано, поскольку матрица имеет 128 байтов, поэтому передача ссылки на 4 или 8 байтов намного эффективнее.