In either case I have to take the train to Faro. The train is 6 and a half hours but only has a 6am and 3pm departure from Lagos. The flight from Faro to Porto is only 1 hour, I just have to take a 2 hour train from Lagos.
It will take 6h 30m to take a train from Lagos to Porto and that includes a transfer. However, there is a direct overnight bus but I doubt if the seat reclines into a horizontal position.
There is also a direct bus from Lagos to the Faro airport (2h).
If you fly, you would also need to get from Faro station to the airport by bus. So you would have to leave Lagos about 4-4.5 hours before your flight.
At that rate, the train from Lagos to Porto (edit: via Tunes) will not take longer than flying.
According to https://www.rome2rio.com/ there is a direct bus from Lagos to Faro’s airport.
In either case I have to take the train to Faro.
While you certainly can travel from Lagos to Porto via Faro, it is a bit of a detour and it would be much easier and faster to change in Tunes.
So total travel time is probably about the same.
The rome2rio link is just a generic one. not route specific. But even when you do get route specific information neither it's link or the airport website itself links you properly to the timetable. But a bit of fiddling around gives you the Lagos to Faro airport timetable-
https://vamusalgarve.pt/#/pt/vamus%20algarve/routes
(then look under 'routes' for '56th Aerobus')
With a total travel time broadly similar and an advance train fare of just E23 2nd class or E45 2nd class I know which I would choose every time- 1st class train.
By the way Rede Expressos run an hourly or better 1 change bus from Lagos to Porto between 6am and 7pm, and three overnight ones.
It is much cheaper on Rede Expressos to spit the fare at Lisbon.
https://rede-expressos.pt/en/timetables
I am playing with their website , I can't look up times for trains past April. Is this normal?
60 days is the standard period of release-
See- https://www.cp.pt/passageiros/en/train-times , then click 'search timetable information' so 28 April is the end of bookings as of today.
Yeah I don't know why I said via Lagos for the train. I decided on the train it's cheaper, easier and only about hour longer. Thanks for the input.