A Branch Point marks a point in a robot where execution is divided into several branches.
When robot execution reaches a Branch Point each branch is executed sequentially unless execution of a branch is terminated by an error. In that case execution continues from the point specified under the Error Handling tab in the step action view of the step where the error occurred.
The order in which the branches are executed is top down unless the outgoing connections are annotated with numbers, in which case the branches are executed in the order indicated by these.
Each branch is executed in the same state (page in the Page View, Cookies, etc.), except for global variables which will survive from one branch to the next. Any change to the outside world will also persist from one branch to the next. Such changes could be writing to a file, storing in a database, submitting a form on a web site, e.g. anything that has an effect in the real world (fx. buying a book on Amazon).
Branch Points have no properties and will be inserted or deleted automatically depending on whether they are needed or not. If the End step from a branch is removed leaving only one branch, the branch point will be deleted automatically.
Following is a video on the subjects Branches, Robot States, and Execution Paths, which is relevant to the understanding of Branch Points.