Cossu made his professional debut in 1996 with Sardinian side Olbia. In 1997, he joined Verona, where he spent the first two years as a member of the under-19 youth team. In January 1999 he was loaned out to Serie C1 side Lumezzane; the loan move was then later repeated for two more years, in January 2000 and November 2000. In January 2002 he was loaned out for a fourth time, this time to Sassari Torres, and he finally made his debut in a Verona jersey during the 2002–03 season in the Serie B league.
In 2005, he left Verona to join Cagliari, where he had the chance to make his Serie A debut, where he made 22 appearances, mostly as a substitute, and no goals.
He returned to Verona on 31 August 2006 in a 3-year contract this time with little success, and was released on 24 January 2008.
Cossu was re-signed by Cagliari on 29 January 2008 on a free transfer. In his second stint at Cagliari, Cossu's level of performances quickly rose up, and he became one of the team protagonists in a well-remembered escape from relegation during the 2007–08 season under head coach Davide Ballardini, who changed the then-winger to a playmaker role behind young strikers Alessandro Matri and Robert Acquafresca. He kept a high level of performances also during the two successful seasons under new boss Massimiliano Allegri, being often picked as one of the key players for Cagliari.
Cossu finally left Cagliari in summer 2015. He was re-signed by Serie D club Olbia. The club won promotion to Lega Pro to fill the vacancies.
On 11 May 2017, club president Tommaso Giulini announced Cossu would return to Cagliari for the 2017–18 season. He made his third debut for the club, and 247th game overall for Cagliari, in a 2–1 away defeat to A.C. Milan.
On 28 February 2010 he received his first call-up for the Italian national team for a friendly game versus Cameroon, making him the first Sardinian call-up after local legend Gianfranco Zola. Cossu played the game, held on 3 March 2010, as a starter: the match ended in a 0–0 draw.
He was in Lippi's 28-men provisional 2010 FIFA World Cup squad, but was not included in the 23-men final squad on 1 June. But after the injuries of Mauro Camoranesi and Andrea Pirlo, he was named as an additional 24th standby player and was featured in the starting lineup in the last friendly game before the World Cup kick-off, against Switzerland on 5 June.
Cossu is predominantly known for his ability to consistently create chances and provide assists for teammates, due to his vision and passing range. Although he was initially deployed as a winger early in his career, he was later deployed as a forward, usually as a second striker, and as an attacking midfield playmaker, where he particularly excelled, finishing as the top assist provider in Serie A during the 2010–11 season. Despite lacking notable physical and athletic attributes, and having a tendency to be inaccurate in front of goal, he is a quick, mobile, technically gifted and creative player, with good dribbling skills; he is also an accurate set-piece taker.