Sirmione is crowded in summer, particularly July and August, when the access road becomes a single-file queue and the old town is barely navigable. The Rocca Scaligera queues are long from 10am, restaurants are packed, and parking anywhere near the peninsula is almost impossible.
May, June, and September are the best months. The weather is warm but not ferocious, the lake is swimmable, and the numbers are manageable. October is cooler but pleasant for the ruins walk and the thermal spa, which becomes more appealing when the air temperature drops.
Easter weekend and public holiday weekends in spring see Italian day-tripper crowds nearly as bad as August — if you're choosing dates, a midweek visit makes a real difference.