Il se fait d’abord remarquer en tant que pirate où il vit de crime et de pillage. Toutefois, il finit par renoncer à cette vie d’excès et d’errance et va offrir ses services à Liu Biao, qui refuse de le prendre à son service à cause de son passé tumultueux.
Il va donc servir Huang Zu pendant quelques années et il combat Sun Quan lors de sa première offensive sur Xiakou [1] où il tue Ling Cao. Toutefois, les talents de Gan Ning ne sont pas récompensés par Huang Zu et en 207, aidé de Su Fei, il traverse le Long Fleuve [2] pour aller servir Sun Quan.
Dès son entrée au service de Sun Quan, Gan Ning propose d’attaquer une fois de plus Huang Zu à Xiakou. Sa proposition est acceptée, il se démarque grandement lors de l’attaque, ce qui permet aux forces de Sun Quan de défaire l’ennemi. Il parvient également à tuer Huang Zu et après les combats, il convainc Sun Quan de ne pas exécuter Su Fei. Il est ensuite chargé de garder XiakKou.
Peu après, il dirige l’avant-garde lors de la bataille navale aux Trois Rivières et vainc les forces de Cao Cao, gagnant ainsi le contrôle de la voie maritime. Il joue également un rôle majeur lors de la bataille de Chi Bi [3] alors qu’il pénètre les lignes ennemies et incendie le camp central de Cao Cao.
Il assiste ensuite Zhou Yu lors des attaques sur les possessions de Cao Cao dans la province de Jing. Il est victorieux notamment en conquérant Yiling et en chassant Cao Ren vers le nord. Sun Quan récompense ses succès en le nommant Grand Administrateur de Xiling.
En 214, alors que les forces du Sud se dirigent sur Hefei [4], Gan Ning parvient à prendre la ville de Huancheng en escaladant les remparts de la ville à l’aide d’une chaîne. Toutefois, ils sont mis en déroute par Zhang Liao lorsqu’ils avancent sur Hefei et doivent retourner à Ruxu. Peu après, en 217, lors de la bataille de Ruxu, il sauve la vie à Ling Tong, qui depuis de nombreuses années le haïssait pour avoir tué son père et met ainsi fin à leur rivalité. Il meurt de maladie en 219.