Se sono file ad uso interno dell'applicazione, sono da conservare e sono specifici dell'utente vanno in "%appdata%\NomeTuaApplicazione", se sono file temporanei vanno in %temp%, ed è bene crearli con la API GetTempFileName; se sono file di output per l'utente, dev'essere quest'ultimo a scegliere dove salvarli con l'apposito common dialog.
Da quanto mi pare di capire si tratta sempre di dati temporanei interni all'applicazione, e non mi paiono neanche tanto grandi; perché invece di salvarli su file non ti limiti a mantenerli in memoria?
La directory radice è la directory base del drive, ad esempio la directory radice del drive c: è c:\.