Does Serial.flush() work if buffer is not read?

So when you send data over serial and you call Serial.flush() is the data still in the buffer if "on the other side" you dont read. So whats the point of calling it if it supposedly just waits for data to be sent?

If you want to clear the receive buffer without looking at it,

while (Serial.available()) Serial.read();