Born in Nahariya, Assulin started his career in the football school of Hapoel Haifa.[2] In 1999, at the age of seven, he moved to the Beitar Tubruk youth ranks. In 2003, when he was just 12, Shlomo Scharf, his team coach, proposed to Assulin's parents to consider taking their young prospect to try out for FC Barcelona, where he was accepted into the youth ranks.

In August 2007, Assulin graduated to the FC Barcelona B team,[3] and was offered a new contract, a senior contract (a contract granted only after the player turns 16) for another three years and a €20 million buy-out clause. At the end of the 2007–08 season, Barcelona B won the league title with 83 points, just one ahead of Sant Andreu.[4] The manager, Pep Guardiola, was promoted to the job of senior team manager.[5] Gai Assulin was rumored to be one of the players that Guardiola would promote to the first team.[6]

After missing most of the 2008–09 season with FC Barcelona B due to an injury, Assulin got an invitation to participate in pre-season matches with Barcelona first team.[7] Assulin appeared in three of Barcelona's six pre-season fixtures; against Tottenham Hotspur, Al-Ahly and Manchester City. He made his debut first-team start in a competitive match of the Copa del Rey against Cultural Leonesa on 28 October 2009, before being replaced by Éric Abidal after 56 minutes.[8] Due to the lengthy 2009–10 season many Barcelona players were given breaks towards the end of the year. This meant that the first team were going to be a few men short, so on 29 December 2009, four Barça B players were called up by Barcelona's first team by coach Josep Guardiola. Among these four were Assulin, and team-mates Víctor Vázquez, Thiago Alcântara, and Jonathan dos Santos.

On 1 July 2010, Assulin and Barcelona announced that by mutual consent Assulin's contract would not be renewed and he became a free agent.[9] Barcelona offered him a three-year contract but as they could not offer him a guaranteed first-team squad position and instead sought to develop him at Barcelona B, he refused the offer. Assulin also had a complicated relationship with the then manager of Barcelona B, Luis Enrique.[10]

Assulin's agent, Pini Zahavi, said: “The decision not to renew Gai’s contract was mutually taken by us and the club. At the moment we are considering his professional options.”[11]

On 8 October 2010, it was reported Assulin had inked a deal to join Premier League side Manchester City, though his contract was only a trial. For the following several months, Assulin was in and out of the City training ground as the club attempted to agree compensation with Barcelona, who were legally entitled to a development fee for raising him in their academy. His signature for City was further complicated by a repetitive injury which rendered him unable to complete his medical and therefore legally incapable of signing a contract with Manchester City. During this period, however, he did play in the Manchester City Academy team against Young Ajax, in a match slated as a test run for a future youth Champions League.

The early part of 2011 saw Assulin make his City Reserve squad debut against Newcastle, coming on as a second-half substitute. City went on to win the game 5–1, with John Guidetti netting a hat-trick.[13][14]

On 17 November 2011, Assulin declared that he was prepared to be loaned out from Manchester City in order to receive first-team action. He had so far failed to receive a call-up from first-team manager Roberto Mancini but was too old to play in the inaugural under-19 NextGen series with the City Elite Development Squad. This meant that Assulin was restricted to playing occasionally for the Reserves. Assulin said: "I need confidence and I can only get that by playing regularly. City and I both feel that I should go out on loan so I can play every week. I could stay in England or maybe join a team in the Spanish second division".[15]

On 23 November 2011, Championship side Barnsley announced that they had agreed a loan deal with Manchester City, enabling Assulin to play for the Reds until 3 January 2012.[16]

Barnsley manager Keith Hill said: "I’ve always known about Gai and was very impressed when he played for the Israel Under-21s against England at Oakwell in September. He’s a little bit different to what we have already got and can unlock doors. He’s had a great up-bringing at Barcelona and Manchester City and is a talented football player who now wants to develop the next stage of his career".[17] Assulin can unlock doors, he's a creative player and a great addition to our squad. He's a very clever player and has a very good football brain. He's quick, but his pace is in his brain".[18]

However, just as the loan deal looked to have been sealed, it was prevented due to injury and fitness concerns, with Hill saying: "On advice from the medical staff at Man City, it's just a deal that we can't do. Common sense has prevailed. It's something we wanted to do, but we're not going to force through a signing when the player's not hundred percent fit.[19] I’m disappointed because I know what type of player he is. If the deal can be done in January [2012] it will be".[20]

On 17 February 2012, Assulin, along with fellow Manchester City youngster Abdul Razak, joined Championship side Brighton & Hove Albion on an initial one-month loan until 19 March, but with the option to extend this by two months. Brighton & Hove Albion manager Gus Poyet said: "Gai is technically very capable, and has great ability on the ball. He showed great potential as an outstanding young talent under Pep Guardiola at Barcelona – I hope he can realise some of that potential here at Brighton."[22] Poyet described the loan move for Assulin as a "no-brainer" and a "unique opportunity."[23] Assulin made his Brighton debut on 22 February 2012 against Hull City, coming on as a substitute for Abdul Razak in the 77th minute of their 0–0 draw.[24] Assulin made his full debut for Brighton against Cardiff City on 7 March 2012 and was substituted after 59 minutes.[25] On 19 March 2012, after one start and three substitute appearances, Brighton exercised its option to extend Assulin's loan deal until the end of the season.[26]

Gai Assulin was released from Manchester City as a free agent on 22 May 2012.[27]

On 11 July 2012, Assulin signed a one-year deal with recently relegated Racing Santander.[28] Six days later, Assulin was introduced as a player in a press conference.[29] On the opening game of the season on 19 August 2012, Assulin made his debut in a 1–0 loss against Las Palmas; he soon scored his first goal, on 15 September 2012, in a 3–0 win over Recreativo de Huelva, giving the club their first win.