Sirmione is really easy to get to, either by car or by train.
Firstly, it is the Milan-Venice direction that leads you to the lake, from anywhere that you come from and take the Sirmione exit, which, really comes out in San Martino della Battaglia and not on the peninsula! You can also exit at Peschiera del Garda or Desenzano del Garda, but on days with a high flow of tourists you would lose time in queues. That said, Once you exit the toll booth, keep right and follow the directions, you will reach Sirmione in a few minutes.
Secondly, you have several options. If you arrive from the west, the most convinient station is in Desenzano del Garda. From here the choice is wide: take a bus, taxi or walk to the centre of Desenzano, which is located less than a kilometre away, and take the boat (see: ferry service). Coming from the east, the station recommended is Peschiera del Garda. Here there are also several means of transport available to reach Sirmione.
In any case, for any questions, information or to purchase tickets you can visit the Trenitalia site.
The nearest airports:
Gabriele d'Annunzio, Montichiari, 25km; Orio al Serio, Bergamo, 90km and Valerio Catullo, Verona, 30km. This is connected to the Verona train station by a shuttle bus service available every 20 mins. More distant airports include: Malpensa, Milan, 175 km; Linate Milan 135km and Marco Polo, 155km.