We offer ASReml-SA as a standalone package or ASReml-R for use within the R environment.
ASReml-SA (standalone) uses a text file user interface and can access more work-space and memory resources, making it useful for very large problems.
ASReml-R is convenient for regular users of the R environment and it is easier to manipulate data.
Both are powerful tools for fitting mixed models and are based on the same computational core, although new developments occur first in ASReml-SA.
There are some algorithm differences, but the results will differ in a minimal way. The options are almost identical in both versions, but ASReml-SA has, for some specific things, a few more tricks and arguments. On the other hand, ASReml-R allows you to have your own pre-preparation code and post-analysis code, and therefore it can be easily integrated with other R libraries (like ASRgenomics, ASRtriala, etc.).
ASReml-SA does limited pre-preparation and all the output is in files, so you will need to program some other manipulations for post-analysis (like a selection index or stability index). Because ASReml-SA is a standalone executable it does manage memory better, and it can handle large problems in general, and often it is a bit faster.
The main limitation with ASReml-R is in fact R, which stores all the objects in RAM memory, and therefore it keeps all the information and objects. For example, ASReml-SA reads the data to construct matrices and then deletes the input data, but in R you cannot do that.
Finally, many users choose ASReml-R because they can connect with their pipelines/workflow. Using ASReml-R you can clean and prepare the data, then call asreml() and run your analyses and post-process to get reports, etc. (think Rmarkdown). Some companies prefer to use ASReml-SA and use Java or another HTML interface to call the program, and then read the output files into their database system. This also seems to work well, but you need a team behind you.