Wilson began his collegiate career at the University of Oregon and averaged 4.7 points and 3.2 rebounds per game as a freshman, making 14 starts. He transferred to Marquette at the end of his freshman campaign and was forced to sit out the 2011–12 season as a redshirt. Wilson averaged 9.7 points and 4.9 rebounds as a junior at Marquette. As a senior, he averaged 11.7 points and 5.9 rebounds per game while starting all 32 games. On February 11, 2014, Wilson had what Marquette coach Buzz Williams said was "the best game since he's been here." He scored 25 points and collected 10 rebounds to push Marquette past Seton Hall.
After going undrafted in the 2014 NBA draft, Wilson joined the Washington Wizards for the 2014 NBA Summer League. On September 26, 2014, he signed with the Phoenix Suns. However, he was later waived by the Suns on October 14, 2014 after appearing in two preseason games. On November 2, 2014, he was acquired by the Bakersfield Jam of the NBA Development League as an affiliate player. On November 14, he made his professional debut in a 127–125 loss to the Texas Legends, recording 17 points and 8 rebounds in 38 minutes. On January 19, 2015, he helped the Jam win the inaugural NBA Development League Showcase Cup with 16 points in the final game against the Grand Rapids Drive. In 44 games for Bakersfield in 2014–15, he averaged 10.9 points, 5.4 rebounds and 2.1 assists per game.
Texas Legends (2015–2016)
On June 25, 2015, Wilson originally signed a deal to play with Virtus Bologna in Italy. In July 2015, Wilson re-joined the Washington Wizards for the 2015 NBA Summer League. On July 27, he signed with the Dallas Mavericks, thus cutting his original contract with Bologna. However, he was later waived by the Mavericks on October 24 after appearing in seven preseason games. On November 12, he was acquired by the Texas Legends after a previous trade for his returning rights. The next day, he made his debut for the Legends in a 104–82 loss to the Austin Spurs, recording nine points, 11 rebounds, one assist and one steal in 39 minutes. In 48 games with the Legends, he averaged 15 points and six rebounds.
On April 8, 2016, Wilson signed with Cangrejeros de Santurce of the Puerto Rican League. That night, he made his debut for Santurce, recording 15 points in a win over Indios de Mayagüez. In 7 games, he averaged 10.3 points, 3.9 rebounds, 1.9 assists and 1 block in 29.8 minutes.
On July 21, 2016, after finishing his season in Puerto Rico, Wilson signed a one-year deal with the Auxilium Pallacanestro Torino in Italy. During his season there, he recorded 12.9 points, 5.9 rebounds, 1.4 assists, and 0.7 blocks and steals in 29.8 minutes per game under the 30 games he played for and started in that year.
On August 3, 2017, Wilson signed a two-way contract with the Los Angeles Clippers, thus becoming their first player to sign up on such a deal. Throughout this season, he would split time with the Clippers and their newest NBA G League affiliate team, the recently formed Agua Caliente Clippers of Ontario, with the majority of his time projected to be spent in the G League. On December 3, 2017, Wilson got his first start as an NBA player, against the Minnesota Timberwolves, scoring 9 points in 29 minutes of play. On December 26, 2017, Wilson scored a season-high 17 points with 5-of-7 three-pointers scored in 19 minutes of play. He started over the course of December for the Clippers to replace injured Blake Griffin. Despite the positive production Wilson provided as an NBA player, he was waived from the Clippers on January 5, 2018, with his spot being replaced by Tyrone Wallace. He was projected to sign a 10-day contract with the Los Angeles Lakers on January 10, but was reneged on the deal after a report from TMZ came out that a woman filed a lawsuit claiming that she got an STD from Wilson while she was dating him.
On January 18, 2018, the Fort Wayne Mad Ants of the NBA G League acquired the returning rights for Wilson and a 2018 NBA G League Draft 2nd round pick from the Agua Caliente Clippers for the returning player rights to Ben Bentil and a 2018 NBA G League Draft 1st round pick. On 21 games, he averaged 11.4 points, 4.1 rebounds, 2.6 assists and 1 steal in 29 minutes.
Wilson played for the Golden Eagles in the 2018 edition of The Basketball Tournament. In five games, he averaged a team-leading 18 points, 3.6 rebounds, an 1.4 blocks per game on his way to being named a member of the 2018 TBT all-tournament team. The Golden Eagles reached the semi-finals before falling to Overseas Elite. In TBT 2020, Wilson scored 16 points in a 78–73 victory over Sideline Cancer in the title game, helping the team win the $1 million prize.