- The dynamic router is used to evaluate which endpoints to send a specific message to at runtime, one endpoint at a time. Recipient List is a set of endpoints to send the very same message to.
I recommend you to read EAI patterns by Gregor Hohpe and Bobby Woolf for some background and insight.
Multicast allows a hard coded recipient list and
recipientList(..)
allows endpoints computed at runtime. Both are "recipient lists".They will likely be equally efficient, if you don't have a lot of logic (say DB lookups) computing the endpoints in the recipient list - the invocation of the endpoints is likely by far the hardest part for Camel. Anyway - a static "multicast" is more readable.
In Camel, a reason for choosing one construct over another is often readability of the route. You should be able to look at a route and follow what it does (given you know EIP). At least, that's a good aim.