CONCATENATE adds rows to an existing table. Nothing more, nothing less.
JOIN is a complex beast. It usually just adds columns to an existing table, but that depends on the JOIN type and the table content. It can add rows as well, for example if you do an OUTER JOIN. A JOIN can also remove rows from a table (INNER JOIN). Further details can be found in the documents mentioned above.
concatenation appends records from one table to another table. duplicate records are not taken care.
join operates on the common columns and their row values. For more details please go through the links suggested by other users.
Another copied question! All these questions are Interview Questions. I've listed loads of interview questions on my blog without answers and Chandramohan just copied them from my blog. I wish he could have changed the text format but well he didn't!!
Copied from this URL:
If you are planning to answer in an interview then I would suggest going through proper example and scenarios.
To me it seems Interviewers are not just looking for definitions they look for the best use of a feature or technique.
For example if someone asks you the difference between Concatenation and Join then you better have to explain the scenarios where you considered Join than concatenation or vice versa.
So your decision for opting one technique over another should be well explained in your answer. All the best.
And you should specially thank to Deepak and other folks who have gathered so many variety of good QlikView questions which has helped interviewers and candidates as well.