In johto!
Trade
sorry you have to trade it to Pokemon soul silver
You can't catch charizard in Pokemon soul silver. You can get a charmander from professor oak.
Catch Pokemon
You can't catch kyogre in Pokemon soulsilver.
you catch it in cerulean cave
snorlax
You can surf in the Dragon's Den, or you can answer the Clair's grandfather's questions and come back later with an empty slot in your party. He will then give you a Dratini (the Dratini will know ExtremeSpeed if you answer all his questions correctly.)
Level 11 or 20 but it evolves on lv. 30 ^_^
no you can, you most catch it in Pokemon emerald
you have to trade it from diamond to soul silver and you can't actually catch Roselia wild in Pokemon soul silver.
you can't catch it, you have to get it from an event which has passed