Canosa di Puglia to Milan trains might be a good value for money solution: travelling in Italy by train is often rather cheap and faster than taking a bus indeed Trains leave from Canosa di Puglia and arrive at Milano Porta Venezia every about 12 hours on average. If travelling with Trenitalia, you need to know the Canosa di Puglia to Milan train schedule: the first train leaves at 06:53, while the last ride is at 06:53. A Canosa di Puglia to Milan train cost about 72.15 €. But how long is the train ride from Canosa di Puglia to Milan? Your journey takes about 12 hours on average. Thanks to Trenitalia, offers, you can save on your trip from Canosa di Puglia to Milan and find low cost tickets starting from 21 €!