In .NET Core 2.1 and later, you can use MemoryMarshal.CreateSpan<T>(T, Int32) method to create a linear Span from a multidimensional array, then use Span<T>.CopyTo(Span<T>) method to copy the required data into or from the multidimensional array.
int[,] table =
{
{ 33, 300, 500 },
{ 56, 354, 516 },
{ 65, 654, 489 }
};
int[] ints1 = new int[3];
int[] ints2 = [1, 2, 3, 4];
var tableSpan = MemoryMarshal.CreateSpan(ref table[0, 0], table.Length);
// tableSpan is linear here: [33, 300, 500, 56, 354, 516, 65, 654, 489]
tableSpan.Slice(3, ints1.Length).CopyTo(ints1);
// ints1 is now: [56, 354, 516]
ints2.AsSpan().CopyTo(tableSpan.Slice(3, ints2.Length));
// table is now:
// {
// { 33, 300, 500 },
// { 1, 2, 3 },
// { 4, 654, 489 }
// }