Ich glaube ProgMaster ging es eher darum, wie der Code aussieht. So weiß man leichter woran es scheitert und was du dazu für Klassen und Funktionen verwendest (so wie du es ja auch jetzt gemacht hast).
Wenn du dir meinen Auszug von MSDN ansiehst, wirst du erkennen, dass die Pfadangabe bei denen anders ist ... du hast ganz einfach vergessen, [\] zu escapen. Z.B. wirst du ja wissen dass '\n' für ein [Carriage Return] steht. Ein '\t' (wie in einem deiner Fälle) steht für [Tab]. Für ein [\] musst du ganz einfach ein '\\' verwenden.
Somit sollte die Zeile ganz einfach auf:
Code:
StreamWriter file = new StreamWriter("C:\\temp\\test.txt", true);
geändert werden ...