After starting out at Nantes in France, he went on to compete professionally in Turkey and Belgium.
Hanni is an Algeria international, gaining his first cap for the full side in June 2016, aged 25, in an Africa Cup of Nations qualification match against Seychelles.
Hanni made his professional debut on 1 December 2009 in a league match against Sedan. On 11 June 2010, he was slated to sign a one-year contract with hometown club Paris Saint-Germain. However, a week later, it was announced that he would not be joining the club due to a disagreement between the club and the player's father.
It is tested in a second Turkish club division, Kayseri Erciyesspor. He stayed three years until the 2013 summer transfer window and despite his title of best passer and the rise of the club in the first division, it is sold at the club Ankaraspor A.Ş. 2 Turkish division.
This is the season when Sofiane Hanni explodes in performance. He became the offensive leader of the club and form a good duo with Tim Matthys. He knows a discreet beginning of season, not finding the net. This changes 17 October 2015 to face meeting in Sint-Truidense accounting for 11th round of Jupiler League. It is indeed involved in the 3 goals KV Mechelen (3-0). First causing a penalty which is converted by Milos Kosanovic in the first period, and then providing an assist to Tim Matthys before scoring his first goal of the season. He is elected by the press best player of the day.
On 24 October 2015, the 12th round, during a dramatic confrontation with the Zulte Waregem that his team lost on the score of (3-4), it marks 2 goals including the second on a direct free kick. Then a week later, he scored his fourth goal of the season against Waasland-Beveren on behalf of 14th round. KV Mechelen is required (2-0) allowing it to be 11th in the standings with 15 points. The game against Oostende, when 16th round he opened the scoring for his team winning the match (2-1). On 5 December 2015, the movement in Royal Excel Mouscron, it contributes again to the win (2-3) by scoring a headed goal. He returned from the next match against Lokeren in mark at the 8th minute with a superb strike from 30 meters. Lokeren still returns to score and the match ends (1-1).
At the 30th round face Standard Liege, Hanni scored twice and two assists to address Nicolas Verdier. The meeting ended with a score of (4-0) and is involved in all the goals for his team, The 16 April 2016 in the game against Charleroi in Play-Offs 2, it can not prevent the defeat of his (2-3) despite another double (one penalty) he realizes late in the game, Following its full and regular season he first won 2 May 2016 the Belgian Lion (Best Arab Player of Belgian football championship) and 9 May 2016, he succeeded Neeskens Kebano, winning the Ebony Boot in 2016 which rewards the best African player of African origin or the Belgian championship. It is the first Algerian football player to win this trophy, at the end of the season he is the author of 17 goals and 7 assists, which he calls " His best season at the professional level ".
For his performances in Mechelen colours, Hanni was named Belgian Footballer of the Year 2015-16, attracting the attention of Ànderlecht.
On 20 May 2016, Anderlecht announced the signing of Hanni from Mechelen for a fee of €3 million on a four-year contract., Hanni played his first official game with his new club in the preliminary round of the UEFA Champions League against the Russian club Rostov scored his first goal with the team and after that missing a significant opportunity by not fit, delivers an assist to Tielemans which doubles the score in the first Continental participation in its history.
Having represented France youth teams, Hanni announced his intent to represent Algeria at international level in November 2009, though he was still eligible at that moment to play for France.
In 26 March 2016, he was called up for the Algeria national team against Ethiopia in the 2017 Africa Cup of Nations qualification. Hanni made his debut for Algeria in a 2–0 win over the Seychelles on 2 May 2016.As of match played 26 August 2017
Scores and results list Algeria's goal tally first.
TFF First League: 2012–13
Belgian First Division A: 2016–17
Belgian Super Cup: 2017
Ebony Shoe Award: 2015–16
Belgian League Professional Footballer of the Year: 2015–16