Travelling from Madrid to Porto by train The fastest trains from Madrid to Porto take around 10 hours and 58 minutes, covering a distance of approximately 419 kilometres. On weekdays, the first train leaving Madrid is scheduled to depart at around 06:20. The last departure is usually at around 22:14.