Como usar a palavra "Long"

Gostaria de saber qual é a maneira correta de usar o termo "long" na frase "Have you been waiting long?" ou "Have you been waiting so long?". Se alguém puder me explicar a diferença, eu agradeceria.

obs.: Eu sei que o correto é 'waiting long' só não sei o porquê.

POWER QUESTIONS
O professor das celebridades Daniel Bonatti ensina várias técnicas para você ter conversas melhores mesmo com conhecimentos básicos de inglês. Com as power questions você vai aprender a direcionar a conversa para onde quiser e com isso alcançar seus objetivos na comunicação. ACESSAR AULA
1 resposta
Acho que a resposta que você quer está aqui :
diferenca-entre-a-long-time-x-long-muit ... 13510.html