| Milano Porta Garibaldi | P. 13:40 | 9 |
| Rho Fiera Milano | 13.48 13:49 | 1 |
| Busto Arsizio | 14.06 14:07 | 4 |
| Gallarate | 14.12 14:13 | 1 |
| Casorate Sempione | 14.17 14:18 | 1 |
| Somma Lombardo | 14.21 14:22 | 1 |
| Vergiate | 14.26 14:27 | 3 |
| Sesto Calende | 14.32 14:33 | 1 |
| Dormelletto | 14.38 14:39 | 2 |
| Arona | 14.44 14:54 | 4 |
| Meina | 14.58 14:59 | 2 |
| Lesa | 15.03 15:04 | 2 |
| Belgirate | 15.07 15:08 | 2 |
| Stresa | 15.13 15:14 | 2 |
| Baveno | 15.18 15:19 | 2 |
| Verbania-pallanza | 15.23 15:24 | 1 |
| Mergozzo | 15.27 15:28 | 3 |
| Cuzzago | 15.33 15:34 | 2 |
| Premosello Chiovenda | 15.37 15:38 | 2 |
| Vogogna Ossola | 15.41 15:42 | 1 |
| Domodossola | 15.53 A. | 6 |
Il treno 10228 parte alle ore 13:40, generalmente dal binario 9
Il treno 10228 arriva alle ore 15:53, generalmente al binario 6
La durata prevista del viaggio è di 2 ore e 13 minuti