@paok1970,
They are both correct, depending on the situation. But you can drop the "for" as part of the verb. This all has to do with verb tense.
Also correct are:
How long will you be waiting ?
How long have you waited?
Turn questions into statements to see the verb tense.
you are waiting
you have been waiting