Using both Embed and Activate you can make a model of a controller. If you use Embed you can also generate the code of this model and download it to an actual microcontroller to act as the controller in your system. Through Embed you shouldn't need a third party.
If you use Activate you can also create physical models (mechanical, electrical etc) which you can connect to your controller model (created in Activate in that case) in order to simulate the whole system.
So I would recommend Embed if you are OK with creating signal based/mathematical models but want to generate code for your microcontrollers and Activate if you don't need to generate code but would like to combine physical with signal based models. Of course using both makes sense if you want to get the best of two worlds