| 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 | 08:18 | 1 |
| Milano Porta Venezia | 08:19 | 08:20 | 1 |
| Milano Dateo | 08:22 | 08:23 | 1 |
| Milano Porta Vittoria | 08:25 | 08:26 | 3 |
| Milano Rogoredo | 08:33 | 08:35 | 2 |
| San Donato Milanese | 08:39 | 08:40 | 2 |
| Borgo Lombardo | 08:42 | 08:43 | 2 |
| San Giuliano Milanese | 08:45 | 08:46 | 1 |
| Melegnano | 08:49 | 08:50 | 1 |
| San Zenone al Lambro | 08:54 | 08:55 | 1 |
| Tavazzano | 09:00 | 09:01 | 1 |
| Lodi | 09:07 | - |