Consider the following two method calls that are nearly equivalent. Take note of the way the byte array is declared and allocated on both.
void Method1()
{
Both are the same but I would not recommend the second one as it is difficult to read to write and debug. Imagine you find this:
byte [] bytearray = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
Could you tell if the size of the array is correct? Yes, but imagine with is:
byte [] bytearray = new byte[25];
It is far more easy.
And imagine the case the array length is 100!