-born Marcano, a youth graduate of hometown's Racing de Santander, made his first appearance with the main squad in an away win over UD Almería on 30 September 2007, due to injuries in the Cantabrian side. However, he had to leave the pitch in the second half of the game, also due to injury, and was unable to play for three months. For the 2008–09 campaign, Marcano was definitely promoted to the first team under new manager Juan Ramón López Muñiz. In the fifth match he scored his first La Liga and Racing goal, in a 1–2 home loss against RCD Mallorca, and was a regular throughout the campaign, mostly as a left back.
Villarreal
In early July 2009, Marcano signed a six-year deal with Villarreal CF. He was first-choice for most of the first part of his first season; however, after consecutive poor performances, he fell out of favour, even losing his position in the defensive pecking order to 19-year-old Argentine Mateo Musacchio. Deemed surplus to requirements at Villarreal for 2010–11, Marcano was loaned to Getafe CF on 8 June 2010. Benefitting from injuries to both Mario and Rafa, he was regularly used in both defensive positions as the Madrid outskirts team narrowly avoided relegation; he netted his only goal of the season on 24 October 2010, in a 3–0 home win against Sporting de Gijón.
On 2 June 2012, after one season with Olympiacos F.C. in Greece, where he playing alongside several compatriots – including manager Ernesto Valverde – and was essential in the double conquest, Marcano was sold by Villarreal to FC Rubin Kazan in the Russian Premier League, for about €5 million. In the 2014 winter transfer window, however, he returned to his previous club, on loan until June and with the option to subsequently make the deal permanent.
Porto
On 11 August 2014, Marcano signed a four-year contract with FC Porto, replacing Manchester City-bound Eliaquim Mangala. He became the sixth Spaniard to join the Portuguese club after compatriot Julen Lopetegui took over three months earlier. On 21 April 2015, Marcano was sent off for a second yellow card as Porto lost 1–6 away to FC Bayern Munich in the quarter-finals of the UEFA Champions League, being eliminated from the tournament despite having won the first leg. In his third season he scored four goals – five across all competitions– but his team could only finish third. On 6 November 2016, after several occasions on which he wore the armband after the titular was replaced, Marcano acted as captain for the first time as a starter, in a 1–1 home draw against Benfica. He netted a career-best five times in the 2017–18 campaign, which ended with the conquest of the Primeira Liga championship after five years.
Roma
Marcano moved to the Italian Serie A on 31 May 2018, with the 30-year-old agreeing to a three-year deal at A.S. Roma. He made his league debut on 31 August, playing the first half of the 1–2 away loss to A.C. Milan. During his spell at the Stadio Olimpico, Marcano appeared in only 13 competitive matches.
Return to Porto
Marcano returned to former club Porto on 11 July 2019, again being given the number 5 jersey and signing a four-year contract.