High speed trains arrive at Porto Campanha, a few minutes from the centre of Porto. The centre rail station of Porto is Sao Bento. If your ticket is Campanha , it is valid to Sao Bento that day.
The high speed train will take you from Lisboa to Porto in about 3 1/2 hours. The one way ticket costs about 23 Euros.
The photo is in the interior of the Stacao de S. Bento.
by plane from major european citys
by train from Spain
I think the best idea is to travel by train.