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

Random.NextBytesメソッドでSpan<byte>を乱数で満たす .NET Standard 2.1/.NET Core 2.1
using System;

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

    // NextBytesを使ってstackallocで確保したメモリ領域をランダムな値で満たす
    rand.NextBytes(nonce);

    // 生成したnonceを表示
    //Console.WriteLine(Convert.ToHexString(nonce)); // .NET 5
    // 生成したnonceをBASE64形式で表示
    Console.WriteLine(Convert.ToBase64String(nonce));
  }
}
実行結果の一例
GA762jYsr5W3VLW/Pxhj7g==