You must defeat Clair in the gym then do a side quest in a cave north of blackthorn.
Defeat Clair the blackthorn city gym leader but afterward she will not give you the badge go to the dragon's den which is north of blackthorn city and find a dragon fang in there show it to Clair to get the badge.
To obtain the Dragon Badge in Pokémon HeartGold, you need to defeat the Gym Leader, Clair, at the Blackthorn City Gym. Clair uses Dragon-type Pokémon, so it's helpful to prepare with Ice, Fairy, or Dragon-type moves. After defeating her, she will initially refuse to give you the badge until you complete a task involving the Dragon Shrine. Once you complete this task, return to Clair, and she will reward you with the Dragon Badge.
The gym is in Blackthorn City.The gym leader is Clair.
KANTO
She is the 8th gym leader in joto reagion
After Beating Clair in her gym (and after beating Team Rocket at the Radio Tower) surf behind the gym to the Dragon's Den. Surf down and across a whirlpool, and go into the building. The Elder will ask you some questions, then Clair will show up and give you the badge. When you get near the exit, Clair will be waiting and give you Dragon Pulse. If you want to, after getting the TM head back to the Elder and he will give you a Dratini, which I think is at Level 15.
After you defeat Clair, you surf behind her gym and get the dragon's fang.
you have to get the cianwood gym badge and the olivine gym badge
by beating the gym leader
Go to the forth gym!
Surf north of the gym to the dragon's den and find the dragon master and Clair will show up and give you the badge
Beat the 8th gym leader which is Clair in Black Thorn gym obviously in Black Thorn city.