Tristach liegt im Süden des Lienzer Talbodens, südlich der Bezirkshauptstadt Lienz auf etwa 672 Metern Höhe. Das Gemeindegebiet erstreckt sich südlich der Drau und reicht bis zum Nordhang der Laserzgruppe, einem Gebirgsstock der Lienzer Dolomiten. Der höchste Punkt auf Tristacher Boden ist die Große Sandspitze mit 2770 Metern. Im Norden grenzt Tristach an Lienz, Nußdorf-Debant und Dölsach, im Osten an Lavant, im Süden an Lesachtal in Kärnten und im Westen an Amlach. Der Tristacher See ist der einzige Badesee Osttirols.
Erstmals erwähnt wird Tristach in einer Urkunde des Hochstifts Brixen zwischen 1050 und 1065 als Dristah. Der Name geht auf das slawische Wort *trъstachъ zurück und bedeutet „die beim Röhricht wohnen“. Die Gemeinde entwickelte sich lange ruhig, bis ihr Wachstum ab den 1920er Jahren deutlich zunahm. Besonders seit dem Zweiten Weltkrieg und vor allem in den 1960er und 1970er Jahren sowie seit der Jahrtausendwende verzeichnete Tristach starke Bevölkerungsgewinne.
Tristach besteht aus mehreren Ortsteilen wie Oberdorf, Neudorf, Egarte und Enderdorf, die sich entlang der Lavanter Straße aneinanderreihen. Neudorf ist bereits mit Lienz zusammengewachsen und der bevölkerungsreichste Ortsteil. Am Tristacher See finden sich ein Campingplatz und das Parkhotel Tristacher See. Die Gemeinde gehört zum Tourismusverband Osttirol und bietet Zugang zu den Lienzer Dolomiten mit Berghütten wie der Karlsbader Hütte. Die Lavanter Straße verbindet Tristach mit Lienz und anderen Nachbargemeinden.