@microscopic-flower-5848 I use GCP native where possible due to the fact that it is more "closer" to the cloud provider's API surface but my use cases have been small and non-critical. If you are already using GCP classic (aka TF-bridged provider), I would continue using that unless you have a very good reason to switch to the native provider. It is likely
not a non-zero effort to switch, so I'd advice you to see if it is really worth making the switch. You might be better off using that resource from the native provider in the same project.
Also note that the GCP native provider is in public preview and that means it can have breaking changes before reaching 1.x. So you should consider that and what your mitigation would be should there be breaking changes in some resource
https://www.pulumi.com/registry/packages/google-native/
To get a sense of how one could use the classic and native providers side-by-side, have a look at the Azure Native migration guide. The Azure Native provider is more stable at this point and is in fact the recommended one over the classic
https://www.pulumi.com/registry/packages/azure-native/from-classic/