Quick answer
Leave from Desenzano del Garda-Sirmione if you can: it has both the hourly regional (about 1h 28min, €10.50) and the most Frecciarossa trains (54 minutes). From Peschiera del Garda the regional takes 1h 38min and costs €12.
For a full day, take the 07:07 or 08:07 regional from Desenzano and come back on the 19:25 or 20:25 from Milano Centrale. The last direct regional back left Milan at 21:25 when we checked; later trains ended with a replacement bus.
- Fastest
- Frecciarossa from Desenzano, 54 minutes
- Cheapest
- Trenord regional from Desenzano, €10.50