Could you tell me if there is any difference in meaning between the following sentences?
I have waited for you for two hours. I'm leaving.
I have been waiting for you for two hours. I'm leaving.
English Language Learners Stack Exchange is a question and answer site for speakers of other languages learning English. It only takes a minute to sign up.Sign up to join this community
There is a slight distinction.
"I have been waiting" -> Means that the speaker has continuously been waiting on you since two hours ago
"I have waited" -> Means that the speaker at some point in the past waited on you for two hours
Here, "I have been waiting" is most appropriate, as presumably, they have been waiting continuously for two hours before the present.
Despite this, native speakers would say either one in this case.
As an unrelated note, "on you" is more idiomatic than "for you".