Allora ti basta utilizzare il metodo System.IO.Path.GetTempFileName, che ti crea in automatico il file temporaneo nella cartella dei file temporanei, garantendogli un nome unico e sicuramente non in conflitto con altre applicazioni. Il percorso completo del file in questione è il valore restituito dalla funzione; ricordati poi di cancellarlo quando non ti serve più.

Per inciso, come mai utilizzi un file temporaneo? Molto spesso è possibile evitarli, migliorando le performance dell'applicazione.