I differentiate the two by their reasons for moving here.
They certainly have different connotations.
Someone who moves here for work temporarily could either be an expat (sent by their company, expenses often paid, an entrepreneur exploring new markets) or an immigrant (skilled or unskilled trying to find a better way of life compared to their home country.)
Immigrants move for work, better quality of life, and to escape persecution. They are often fleeing from something, whether it's poverty, crime, or unfriendly governments. Expats generally move for adventure, love, curiosity, a "calling" of some sort... not for economic reasons other than being sent somewhere by outside forces.
I suppose you could see them as one in the same, but background plays an important part. I don't think I am in the same situation as a Chinese immigrant that comes with almost nothing to live and work here permanently. When things get tough here I have the option to legally leave and enter someplace else.