Updated: Aug 27, 2020
Purpose: The Pick activity helps to model a set of event triggers followed by their corresponding handlers. A Pick activity contains a sub activity called PickBranch activities, where each PickBranch is a pairing between a Trigger activity and an Action activity. At execution time, the triggers for all branches are executed in parallel. When one trigger completes, then its corresponding action is executed, and all other triggers are canceled.
Advantage: The main advantage of using pick activity is it helps to check multiple handles at a single point of time. Assume, we have a scenario, based on a certain element existence on the screen you have to perform a set of actions. Of course you can use an element exists and decision flow to perform the same. But element exists works sequentially and it comes with a time out. So if we have 4 conditions to be checked you have to go one by one.
Example: In the above picture we are using a Pick activity and inside multiple pick branches. We have scenario where a dialog box appears if 'Account is found' and error box appears if 'Account Not found' and we take some action based out of it. So we capture both the boxes in element exists. When the process executes, which ever element is exists those actions are triggered and others are ignored. So using this based on the element that is appearing on the screen we can instantly take a decision.
Conclusion: So choose pick activity in your solutions when ever you face a scenario where you have to pick a trigger among multiple triggers.