So I am playing Pokemon omega ruby, and I have a lot of good Pokemon all Gen 1, 2, 3 and so starters.
If I transfer all my Pokemon to the poke bank, can I restart my whole game then withdraw all my Pokemon?
Yep, you can put them all in bank, restart your game, and then take them out again.
Source: Experience, I've done it at least 3 times.