pastoria city at the move tutors house for more soulsilver heartgold info go to http://pokebomb.co.cc
You can get Heart Scales in Pearl from digging in the Underground and (P.S. This is for after you get the National Dex) from wild Luvdisc.
Assuming you are playing Pearl, Diamond, Platinum, HeartGold or SoulSilver, it won't learn it via leveling up, you must use the valuable TM26; but it is a good choice of Pokemon to use it on. You can get the TM from Wayward Cave, and some other places, which I can't be bothered to list right now, I'm currently underground trying to find Heart Scales in Pokemon Pearl. HEART SCALES FTW!!!!
you use it on move tutors to teach your Pokemon moves
you can ues a heart scale in mistralton city the house next to the pokemon center
You can use heart scales at the Move Re-learner in Pastoria City. He reteaches your Pokémon a move for every heart scale used.
Unless you use a cheat pack then you have to trade it to Diamond and Pearl from Heart Gold and Soul Silver.
You can get them if you find them somewhere. You can also get them if your Pokemon with pick up ability picked it up. If possible, you can fish in luvdiscs and use thief to steal heart scale that they usual hold.
you go to route 128 and surf and use super rod to fish. you will find a pokemon called luvdisc and catch it and they usually are holding heart scales.
Heart Scales are really useful. You can dig them out in the underground. Go to Pastoria City and go south from the Pokemon Center. Next, when you see the water go to the house near it. The guy in there will teach your Pokemon moves that it forgot. This is useful if you need a combination but the move isn't a TM and your Pokemon forgot it. For Example, if you want your Gengar to know the combo Hypnosis, Nighmare and Dream-eater and your Gengar already forgot hypnosis then you use a heartscale.
as far as i know you can migerate it from Pokemon emerald or trade it from Pokemon heart gold and soul silver or use cheats
Go to Pastoria city if you have Diamond, Pearl, or Platinum and give to this guy and he'll make your Pokemon remember moves. If you have Soulsilver or Heartgold, then go to Blackthorn city and go to the move deleter's house. The guy that will make your Pokemon remember moves is wearing a pink shirt and blue trousers.
Canalave City and Pastoria City