You need the same version of software on all stack members. In case of a software update the whole stack will reboot. Using mLAG you can update both members of mLAG peers one after the other without downtime of LACP members of the switch (f.e. Servers, other switches).
If you don´t use LACP for connected devices you can use a stack as well and save management IPs (f.e. licennsing) and have only one device for configuration.
The main advantage of stacking is that you get to take several individual switches and configure them and treat them as a single logical switch instead of as several independent individuals..
Also, depending on the particular switches and their stacking technology, you may have a switch to switch connection at much higher throughput than the capacity of an access port (or trunk port) connection between switches.
if you are using lag you will have to design a loop free topology between the ports using STP or ELRP. and you will have to manage each switch individually