Die Gemeinde liegt zwischen dem Lago di Lugano und dem Lago di Como nahe dem Lago di Piano. Die Gemeinde besteht aus sechs Dörfern: Cardano, Codogna (die die städtischen Ämter an der renommierten Villa Camozzi beherbergt), Gonte, Grona, Naggio und Velzo. Sie ist circa 50 km von Como entfernt.
In der Vergangenheit verlief eine Bahnlinie zwischen Menaggio und Porlezza. Der Dienst wurde 1884 geöffnet und 1939 wegen der Ausbruchs des Zweiten Weltkriegs suspendiert. Im Jahr 1946 erstellte man ein Projekt zur Elektrifizierung der kleinen Eisenbahn; es wurde 1949 genehmigt, aber die Renovierungsarbeiten wurden nie ausgeführt, da die Eisenbahn nicht mehr in Betrieb war. Sie wurde schließlich im Jahr 1966 ganz aufgegeben.