Consider the following situation - a customer goes to a travel website to find out the different options for travelling to his vacation spot. For this, he/she creates a number of iteneraries out of which only one will be finalized at the end or all of them will be discarded. These iteneraries donot need to be stored in the database on a permanent basis. Storing them in a temporary table to be discarded/deleted at the end of session/transaction makes sense in such cases.
Simply put, temporary tables are used to store data temporarily during a transaction or session.