Dorfen ligger i dalen til floden Isen (biflod til Inn) cirka 50 km øst for München, 53 km nord for Rosenheim, 32 km vest for Mühldorf, 31 km syd for Landshut og 20 km fra landkreisens administrationsby Erding .
De tidligere kommuner Tegernbach (med Grüntegernbach og Wasentegernbach) og Zeilhofen blev indlemmet i Dorfen i 1978.
Derudover er der landsbyerne Algasing, Eibach, Esterndorf, Hausmehring, Jaibing, Oberdorfen, Schiltern, Schwindkirchen og Watzling.