Execute Macro Activity Vs Invoke VBA Activity

So i am starting to experiment with macros in my automation and i was just wondering what is the best practice to use the Execute Macro or Invoke VBA activity? Is there any difference between them? Are there cases where you would use one over the other?