in mt. moon Monday 8:00 PM - 12:00 PM but you cant catch them you only get a moon stone
Breed a Clefairy with a Jigglypuff.
In Mt.moon, but be patient, they are not common
Well if you can't find it in the grass try trading with somebody or migrating it but there is probably no other way you can find clefairy in heartgold.
nidorino, nidorina, clefairy
monday nights at mt moon
Her Clefairy is level 17 and her Milktank is level 19.
nidorina,nidorino,clefairy,and jigglypuff
Nidorina, Nidorino, Clefairy, Jigglypuff, and Skitty
You can find it in two locations: - Mt. Moon - The safari zone
Whitney uses Clefairy and Miltank in Pokémon Gold/Silver/Crystal/HeartGold/SoulSilver and in the anime she has a Nidorina, a Clefairy and a Miltank.
You have to go to mt moon and go to the ladder and exit. Then it has to be (8:00pm or 12:00 pm) for them to come out! Hope this helps
Here's a lot of info on the safari zone in heartgold, including a list of Pokemon and where they are.