You can get it from the Viridian City GYM.
Good Luck!
You must go to the Pokemon Gym. Beat the gym leader and he awards you with the 8th gym badge
You have to go to sootopolis city and battle Juan. He'll give you the rain badge.
You need to go to the distortion world. And finish this story line. Then you will be able to go to Sunnyshore city. Then you'll have to go to the Lighthouse to find the gym leader. Then you can fight him at his gym
It is the 8th gym....The last gym so just ignore until you beat the first 7
Simply beat Giovanni in Viridian City and get the Earthbadge: it makes all Pokemon obey you.ORAll Pokemon obey you, the badges are for Pokemon traded from other games.
Get the 7th or 8th gym badge, and its in the Power Plant.
in Viridian city. the one that was locked.
Viridian city.
After getting all the badges the 8th gym will open You beat givoanniORWalk Through Walls!!!!!!!!!!
To get the 8th badge, you must head back to Vermillion City once you got the first 7 badges. Giovanni will be the gym leader. Once you win, you deserve the 8th and last badge, the Earth Badge. Once you have the badge, you are worthy enough to go challenge the Pokemon league. Good luck with that...your're gonna need it.
The 8th Badge in Pokemon Diamond is called The Beacon Badge.
you go search in safron
govinia
You can find it in the town where you get the package for the oak as well as the place you go to get to Indigo Plato.
viridian city
you go to the elite four which is to the left of the place you got your 8th badge. you need to cut the tree then go through a cave to get there. it'd be a good idea to have Pokemon with levels over 60!
you will get it from the girl at the 8th badge gym she will give you the hm 07 waterfall