> (1) I have done something for two years. (I have lived in Beijing for two years). > (2) I have been doing something for two years. (I have been living in Beijing for two years) Sentence (1) is in what is usually described as the ***present perfect***. Sentence (2) is in the ***present perfect continuous***, also know as the ***present perfect progressive***. Many texts and web source describe these as "tenses". More modern grammars often refer to the difference between a simple, perfective, and progressive construction as a matter of ***aspect***. This difference of terminology does not affect the usage of these forms. Sentence (1) and similar perfect forms are most often used to refer to an action started in the past and continued over sa period of time. It can be a period already ended. oner continuing up to the present and perhaps not expected to stop soon. Sentence (2) and similar progressive forms are most often used for an event or process started in the past, and continued through the present. If a person began living in Beijing two years ago, and is still living there, either (1) or (2) could be used, with a slight change of emphasis being the only difference. However if A person moved to Beijing five years ago, and left again 3 years ago, sentence (1) would still be appropriate, but (2) would not, or at least would be very unusual. One cannot tell from (1) if the speaker is still living in Beijing, but two strongly implies that s/he is. See also https://ell.stackexchange.com/questions/39902/have-been-doing-and-have-done