Unity SendMessage is also using reflection - so it will be as slow as your Invoke code, if not slower if it does some other processing. However, hopefully Unity will cache the delegates for methods it’s called in some kind of O(1) storage. I wouldn’t trust that though and never SendMessage unless it is a rare event (when it’s damn handy along with Broadcast and SendUpwards).
You are much better off caching that in an Action (or Action<parameter1, … >) if you call every frame - now that is very fast.
When you don;t know ahead of time all of the delegates then you can use this code I wrote to cache the signatures if you are running on an AOT environment like iOS.