Born in Toulouse, France, Nafti made his professional debut with his hometown club, Toulouse FC. He was used sparingly during a three-year spell, and also played several games with the reserves. His best season was 1999–2000, as he appeared in 13 games and scored once to help the team return to Ligue 1 after one year of absence. In summer 2000, Nafti joined Racing de Santander in La Liga and, as in his previous club, started his stint appearing for the B-team. In the 2000–01 season he played in just three games for the main squad, which was eventually relegated, then proceeded to become a very important midfield element for the Cantabrians in the following three years, whilst collecting 41 yellow cards and three red. Nafti was signed on loan by Birmingham City in the final minutes of the January 2005transfer window, making his Premier League debut on 5 February in a 2–0 loss away to Manchester United in which he started and was booked. Sometimes referred to as "Nasty" due to his fiery nature and tendency for cautions, he was primarily signed to replace the outgoing Robbie Savage, and finished the season strongly, which led to a permanent deal being agreed in the summer. Nafti's 2005–06 campaign came to end before it had even begun, with a severe injury to his cruciate ligaments in a friendly with Deportivo La Coruña in early August 2005. He recovered sooner than expected, and was able to start the last match of the season, a 1–0 loss at Bolton Wanderers, with relegation already confirmed. After having appeared in 32 games in 2006–07 to help Birmingham return to the top division, Nafti scored his first goal for them on 13 August 2008, in a 4–0 win against Wycombe Wanderers in the 2008–09 League Cup. In June 2009, after the club chose not to renew his contract, he signed a two-year deal with Aris Thessaloniki in Greece. On 12 September 2009, Nafti scored the only goal of the home match against PAS Giannina to put Aris top of the Superleague Greece after three matches. He finished his debut season with four goals from 22 league games, as Aris finished fifth. During the January 2011 transfer window, the 32-year-old Nafti left Aris and returned to Spain, signing an 18-month contract with Segunda División club Real Valladolid. He spent the 2012–13 season with Real Murcia, helping them avoid relegation from the second tier, and had considered retiring from the game before dropping down a division to sign for Cádiz. He established himself in the latter team but was also troubled by injury, and after they signed midfielder Jon Ander Garrido in the January 2014 transfer window, Nafti's contract was cancelled.
On 10 June 2016, Nafti was given his first managerial job, at Segunda División B club Marbella, despite reportedly not possessing the licence required to manage at that level. After a series of poor results, he was fired on 7 March 2017. Nafti was hired by another Segunda B club, Mérida, on 27 June 2017; he lasted until 20 December. The following 12 March, after the resignation of his successor, Loren, he returned to the Estadio Romano as manager, but left at the end of the season after failing to prevent their relegation. In October 2018, Nafti took over as manager of Badajoz, also of Segunda B, until the end of the season. In the 2019–20 season, his team eliminated Las Palmas and Eibar from the Copa del Rey before an extra-time loss to Granada in the last 16. He was dismissed on 4 February 2020 with the team fourth in the league.