I am by no means an expert on that topic, but I would assume that while a big cloud instance could go far with regards to CPU and memory, network bandwidth/traffic could quickly become an issue with several 1000 users.
Depending on the amount of work you are willing to put into this, you could even start with a load-balanced setup were one or more web servers, jicofos and prosodys are distributing the load to several videobridges. That would make it easier to scale the system up by adding additional instances.
Start small. Failure is cheap. Worst case, you seek out local sponsors for a dedicated server in donated colo somewhere nearby. Even if it doesn’t take off, you’ll have learned from the experience.
That's a good suggestion as well. If the plan is to run this instance as a non-profit for local users, it might also be possible to ask local ISPs to sponsor a box. That could help keeping traffic local and latencies low.
Thought about running it semi-public for my homewtown/area to support businesses, but how many of the 350k people will join? Or be concurrent users?
Quite a few question marks for me...