www.autoeurope.com (a broker consolidator that offers deals with major rental companies in Europe, like Europcar, Hertz, Avis etc.
Rental car pick up could be at Milan airport (Malpensa airport, I suppose) where you land, or if you want closer to Lake Garda, then select Verona. Most rental car agencies in Verona are not far from the train station, as well as at the Verona airport, which however it's out of town near the town of Villafranca.
Your car rental return would be at Treviso (either in the city or at the Treviso airport).
The drive from the Malpensa airport to lake Garda is approximately 2.5 hours, depending on traffic and exact town on the lake. The drive from Verona to the lake is about 30 to 60 minutes depending on where on the lake you want to go.
If you decide to take the train to Verona, assuming you land at Milan Malpensa, you take the Malpensa Express train from the airport to the MILANO CENTRALE train station. Then from Milano Centrale you would take a train to VERONA PORTA NUOVA (most likely the train would be headed to Venice or Trieste, with Verona being an intermediate stop).
For train timetables consult:
www.trenitalia.com
from: MALPENSA AEROPORTO
to: VERONA PORTA NUOVA