| Stop | Arrival | Departure | Tracks |
|---|---|---|---|
| Saronno | 07:38 | - | |
| Saronno Sud | 07:41 | - | |
| Caronno Pertusella | 07:44 | - | |
| Cesate | 07:45 | - | |
| Garbagnate Milanese | 07:48 | - | |
| Garbagnate Parco delle Groane | 07:49 | - | |
| Bollate Nord | 07:52 | - | |
| Bollate Centro | 07:55 | - | |
| Novate Milanese | 07:58 | - | |
| Milano Quarto Oggiaro | 08:01 | - | |
| Milano Bovisa | 08:06 | - | |
| Milano Lancetti | 08:13 | 1 | |
| Milano Porta Garibaldi Sotterranea | 08:15 | 08:16 | 1 |
| Milano Repubblica | 08:17 | - | |
| Milano Porta Venezia | 08:19 | - | |
| Milano Dateo | 08:22 | - | |
| Milano Porta Vittoria | 08:25 | - | |
| Milano Rogoredo | 08:33 | - | |
| San Donato Milanese | 08:39 | - | |
| San Giuliano Milanese | 08:45 | - | |
| Melegnano | 08:49 | - | |
| San Zenone al Lambro | 08:54 | - | |
| Tavazzano | 09:00 | - | |
| Lodi | 09:07 | - |