Software Serial available() function

will the code first wait for data to be "available" in the serial port

Yes.

You can look at the source of the serial library and see that "read" waits for a start bit condition.