Ian, if this is a lot of data then it will be written to disk whether you select a table variable or a temp table. The in-memory thing is a bit of a myth...
Yes that is true however SQL Server manages the name. If I have a thousand users all creating a table with that DDL and the same table name I will run into problems.