Il rejoint les Wildcats de Kansas State en 2013. Il est nommé dans la Second Team All-Big 12 Conference. Sur la saison, Foster affiche des moyennes de 15,5 points, 3,2 rebonds et 2,5 passes décisives par match, avec 40% de réussite à trois points[1].
Lors de sa deuxième saison universitaire, Foster est nommé dans la Preseason First Team All-Big 12[2]. Cependant, il vit une saison très décevante, qu’il attribue à une concentration excessive sur la NBA. Il prend du poids et est suspendu après trois matchs de conférence[2]. Ses moyennes chutent à 12,5 points, 2,3 rebonds et 1,9 passe décisive par match[1]. Kansas State termine la saison avec un bilan de 15–17 et, à son terme, l’entraîneur Bruce Weber le renvoie de l’équipe. Foster est transféré à Creighton, sous les ordres de Greg McDermott[3].
Conformément au règlement NCAA, il doit observer une saison sans jouer. Le , il établit un record en carrière avec 35 points lors d’une victoire 87–70 contre Georgetown[4]. En fin de saison, il est sélectionné dans la First Team All-Big East et figure parmi les cinq finalistes du Jerry West Award. Il inscrit 638 points sur la saison, un record pour un nouveau joueur de Creighton, avec une moyenne de 18,2 points par match, la troisième meilleure de la Big East. Après réflexion, il choisit de revenir pour sa saison senior[5].
Le , la compagne de Foster, Chelsea Ghasemi, donne naissance à leur premier enfant[2]. Le , il inscrit son 2 Modèle:000e point en carrière universitaire sur un tir au buzzer pour battre DePaul[6]. En senior, il affiche 19,8 points, 3,9 rebonds et 2,7 passes décisives de moyenne[7]. Il est à nouveau nommé dans la First Team All-Big East et est invité au Portsmouth Invitational Tournament 2018[8].
Carrière professionnelle
Non sélectionné lors de la draft NBA 2018, il rejoint les Kings de Sacramento pour la NBA Summer League[9].
Le , il signe son premier contrat professionnel avec Wonju Dongbu Promy en Korean Basketball League[10]. Le , il établit un record en carrière avec 47 points, accompagnés de 9 rebonds, 6 passes décisives et 3 interceptions, lors d’une victoire 117–116 face à Changwon LG Sakers[11]. En 51 matchs, il termine la saison comme 4e meilleur marqueur de la ligue avec 25,2 points, ainsi que 5,2 rebonds et 3,7 passes décisives de moyenne.
En , il participe à la NBA Summer League avec le Magic d'Orlando.
Le , il signe avec Hapoel Holon[13]. Pour son premier match le , il inscrit 20 points, avec 6 rebonds et 4 passes décisives. Le , il réalise son meilleur match de la saison avec 29 points, dont 6 tirs à trois points, lors d’une victoire contre Hapoel Be’er Sheva[14]. En 34 matchs, il affiche des moyennes de 19,2 points, 3,2 rebonds et 3,6 passes décisives.
Le , il signe un contrat d’un an avec le Panathinaïkós[15], avec une option pour une saison supplémentaire. Il est libéré le . Il s’engage avec Türk Telekomspor en championnat turc[16].
Le , il retourne en Grèce et signe avec Promithéas Patras avant les play-offs. En 10 matchs, il affiche 12,5 points, 2,7 rebonds et 2 passes décisives en 24 minutes par rencontre.
Après sa saison à Rytas Vilnius, il signe avec Shandong Hi-Speed Kirin en CBA, mais résilie son contrat d’un commun accord. Le , il rejoint à nouveau Rytas Vilnius[18].