I'm obviously missing something. That is not the full code, it is just a fragment. I don't understand the processing of the input line and I don't see where you use the data once read and processed.
Edit: So now my post looks silly since you updated the code section I was commenting on.
What I want to do is to read the line that the arduino is printing ("5111" / "4111")
and then to the the first char and save it on "space" and then on..
for (int i = 0; i < arr.Length; i++)
{
char first = data_arduino[i];
arr[i] = first;
data_arduino = port.ReadLine();
}
Each time you round the loop you overwrite the content of data_arduino with the next line so at best the array 'arr' witll have the first char from the first line, the first char from the second line in the second position and so on. And I still don't see where you do anything with the resulting content of 'arr' and I still don't understand the processing used to generate 'arr' .
Then you need to simplify the program to the point where you are just concerned with reading each line and not doing any post read processing of the line. You also need to make sure you have the correct port and baud rate. Com back when you have done this.