I'm currently working on a bot using Microsofts Bot Framework. This bot has multiple Component dialogs build up from WaterfallDialogs. When my users go through the conversations I split up pieces of this conversation in separate waterfall dialogs, but I've noticed that there are two ways to make this work.
1) BeginDialog()
Creates a new instance of the dialog and pushes it onto the stack.
2) ReplaceDialog()
Ends the active dialog and starts a new dialog in its place.
Currently I've not noticed any difference in using these two ways of switching waterfallDialogs. What are the main differences between the two and wich should I be using to switch between waterfallDialogs within a single Component Dialog?