sinal += Serial.read(); works, because the += operator is overloaded to take a variety of right hand types.
sinal = Serial.read(); fails, because the only version of the = operator expects a String on the right.
sinal = String(Serial.read()); would also work, because the constructor for the String class is overloaded to take a variety of types, but it would NOT do what you expect.
Best to get rid of the String class altogether, and learn about char arrays, NULL termination, and the whole "how to read serial data" scene.