I guess "bienvenue à" is the most common form. It can be used in various situations :
- a name / a person : "bienvenue à notre nouveau membre Welshie"
- a city : "Bienvenue à Paris"
- an event : "bienvenue à la Foire du Trône"
-
...
"bienvenue sur" would be used when you're actually standing
on something, for example, a boat : "bienvenue sur la péniche XX"
But when it concerns the web / the computer, we generally use the preposition "sur" : "surfer sur internet", "aller sur google"...
"bienvenue dans" is used when you
enter in a place : "bienvenue dans notre nouveau bâtiment"
I would say "bienvenue en" is only used with
some names of countries, those where you normally use the preposition "en". For example :
"je vais
en France" => "bienvenue
en France"
Whereas "je vais
au Canada" => "bienvenue
au Canada"
All this would need confirmation from other members...