What the difference between:

Have you been waiting long?
How long have you been waiting?

are the two of them correct?

Both are correct, but they will solicit different answers.


How long have you been waiting? - I've been waiting 3 hours.


Have you been waiting long? - Yes(, I've been waiting 3 hours). No(, I've been waiting 10 minutes.)


The first question requires an amount of time in the answer.

The second question could be answered with a simple 'yes' or no'

Got it, thanks a lot ^_^

Students: Are you brave enough to let our tutors analyse your pronunciation?

Hello! Yes, both of them are correct, but they are not similar and you will get different answers.