So, which one is better? Is there any major differences? Which one do you have? Which one did you have back in the day?
Personally, I would get HeartGold. Just because I like the color better and there is that saying "Heart of gold" which ties in with the name of the game. And I had Gold version back in the day. Also Ho-Oh > Lugia, in my opinion.
The main difference is the pokemon that you can get in each game. Here is the list I pulled off of bulbapedia.[spoiler]
HeartGold
056 Mankey Fighting
057 Primeape Fighting
058 Growlithe Fire
059 Arcanine Fire
167 Spinarak Bug Poison
168 Ariados Bug Poison
207 Gligar Ground Flying
226 Mantine Water Flying
231 Phanpy Ground
232 Donphan Ground
302 Sableye Ghost Dark
343 Baltoy Ground Psychic
344 Claydol Ground Psychic
382 Kyogre Water
458 Mantyke Water Flying
472 Gliscor Ground Flying
SoulSilver
037 Vulpix Fire
038 Ninetales Fire
052 Meowth Normal
053 Persian Normal
165 Ledyba Bug Flying
166 Ledian Bug Flying
225 Delibird Ice Flying
227 Skarmory Steel Flying
216 Teddiursa Normal
217 Ursaring Normal
303 Mawile Steel
316 Gulpin Poison
317 Swalot Poison
383 Groudon Ground
[/spoiler]
It took me soooo long to decide which one I wanted. I actually had Gold, Silver, and Crystal back in the day. But my first was Silver. Buuuut... I got HeartGold mostly because I liked the exclusive Pokemon more, especially Growlithe.
And i'm tied with Ho-Oh and Lugia, I can't decide which I like more...
I got HeartGold because I had Gold.
If you like Ho-oh you should get Silver. The Ho-oh in that game is far superior.
I got Soul Silver for 2 reasons.
A) most-if-not-all of my friends got HeartGold and I would be in demand for version exclusives
B) I had Silver back in the day