中国人 vs 华人 which should I use? I think 中国人 only refers to people having Chinese nationality while 华人 can be referred to any Chinese-descent people.

If one person is China-born and has Chinese nationality, should I always use 中国人? Is 华人 less common, or in the worst case, rude?
中国人: usally it refers to people who have PRC nationality. In Mainland China, this may also refer to citizens of Hong Kong, Macau, and Taiwan.
华人: Chinese (race) people with the nationality of another country.
华侨: 中国人 living abroad.
华裔: the decendants of 华人 or 华侨.