Throttling (429s) indicates that your provisioned throughput is not enough for the volume of operations you are currently doing, each operation consumes an amount of RU, and you have a limit quantity provisioned, if the sum of the consumed RU on a second go over the provisioned, the other requests will get throttled. If this is something sporadic due to spike in your usage, then retries can mitigate it (the 429 response contains a header that indicates how long would you have to wait). Our SQL SDKs automatically retry for you (you are using C# so you can use our C# SDKs https://learn.microsoft.com/en-us/azure/cosmos-db/create-sql-api-dotnet) for a default number of times (which can be customized).
Retries by themselves won't solve the 429s though. If your 429s are constant, what you might want to consider is increasing the provisioned throughput (https://learn.microsoft.com/en-us/azure/cosmos-db/set-throughput) or reducing the volume of operations to accommodate what you have currently provisioned.