Personally we prefer the Spey and Avon restaurants to the bigger and busier main dining room (though it is absolutely fine too). They are higher up the ship so a little more ships motion but smaller, quieter and usually with a decent sea view from the tables.
Any wine you bring onboard will need to be handed in, it will be returned to you at the end of the cruise. Some of the merchants in Oporto will deliver straight to your home.
There is another section of cc for ports of calls, you may get some advice there.