Hello @mikefinch87 ,
welcome to this moderated Azure community forum.
The 'Azure.Devices.ServiceClient' shows you get this messages while doing 'cloud to device' communication.
It seems you hit one or more IoT Hub limitations so the service throttles, it rejects commands because it's eg. to busy of bandwidth limitation are reached.
In general, for many services, throttling can be recognized as special error situation so you are encouraged to resend the action after some cool-down period (eg. a couple of seconds).
It's unknown in which context this exception was caused and what the scale and load of your iot hub is.
If you want more specific information, you can create an Azure support ticket so the situation in the background can be monitored.
If the response helped, do "Accept Answer". If it doesn't work, please let us know the progress. All community members with similar issues will benefit by doing so. Your contribution is highly appreciated.