.NET Standard 2.1/.NET Core 2.1以降では、バイト配列(byte[])だけでなく、Span<byte>を引数にとるバージョンも追加されています。 これにより、バイト配列の一部分だけを乱数で埋めたり、配列以外のバイト列を乱数で埋めるといったことができます。

Random.NextBytesメソッドでバイト配列の一部分のみを乱数で満たす .NET Standard 2.1/.NET Core 2.1
using System;

class Sample {
  static void Main()
  {
    var nonce = new byte[16];
    var rand = new Random();

    // NextBytesを使って配列の先頭8バイトのみをランダムな値で満たす
    rand.NextBytes(nonce.AsSpan(0, 8));

    // 生成したnonceを表示
    Console.WriteLine(BitConverter.ToString(nonce));
    // 生成したnonceをBASE64形式で表示
    Console.WriteLine(Convert.ToBase64String(nonce));
  }
}
実行結果の一例
06-4A-5F-76-CA-12-7E-CA-00-00-00-00-00-00-00-00
BkpfdsoSfsoAAAAAAAAAAA==

MENTAにてテキストチャットによるサポートを行っています。 問題の解決法をお探しの方や.NET/C#を学習中の方はどうぞご利用ください。