速くはあるだろうが安全じゃない。ケースによってはここまでやらないと。
int [] _hoge = new int [5];
int [] Hoge {
  get { return (int []) _hoge.Clone(); }
  set {
    if (value == null) throw new NullReferenceException();
    if (value.Length > _hoge.Length) throw new ArgumentOutOfRangeException();
    value.CopyTo(_hoge, 0);
 }
}