Не совсем. Существует пользовательская и системная папка, расположение по умолчанию которой варьируется в зависимости от версии Windows, имени системной папки, и действительно, в более старых версиях Windows была одинаковой как для пользователя, так и для системного случая. Однако эти значения по умолчанию могут быть переопределены (они находятся в системе, которую я сейчас использую, где они не находятся на том же диске, что и системная папка).
Местоположения хранятся в системных переменных. Некоторые платформы (.NET, VB6 и, без сомнения, другие) предоставляют удобные способы поиска путей, а не поиск системной переменной (например, System.IO.Path.GetTempPath в .NET).
Windows не очищает временную папку для вас (вот почему стоит выгружать старые файлы каждые несколько месяцев на своей машине), вам нужно хорошо играть. Создайте файл или файлы, которые вряд ли наступят на имена, которые использует любое другое программное обеспечение (они должны делать то же самое, и любое имя должно делать то же самое, но всегда полезно предположить, что другой код в системе хуже), и удаляйте файлы, когда закончите (или, по крайней мере, при выходе из приложения).
В .NET System.IO.Path.GetTempFileName () создаст новый файл во временной области и вернет вам его имя, которое гарантированно не будет конфликтовать с другими, поэтому используйте этот или подобные методы, если Вы можете.