My MPLS provider is giving us a choice to use static routes or BGP for our new MPLS setup.
What are advantages/disadvantages of the 2 choices? What is more commonly used?
MPLS providers will implement MP-BGP in their network to share all routes from and to your different sites.
They will be separated from other customers' routes by beeing in a "vrf" (vpn), thus eliminating the need of separate IP space (eg all customers can use RFC1918 addresses)
I think that your provider is giving you the choice of the routing protocol between the PE and the CE router.
Typical end-to-end synopsis:
CE --leased line-- PE --backbone link-- P --backbone link-- PE --sdsl line-- CE
Static routing between PE and CE is fine for most deployments, but to be avoided if the wan link is ethernet, because in most cases the PE and the CE routers will have no way to know when the link is down (because of L2 devices which don't propagate link state).
If your sites are connected through frame-relay or ATM (dsl, T1, T3...), interfaces will go down if link is down.
You typically would need a routing protocol whenever
You would use static routes if you can't or don't want to manage the additional complexity of dynamic routing.