Service orchestration represents a single centralized executable business process (aka, the orchestrator) that coordinates the interaction among different services. The orchestrator is the sole responsible for invoking and combining the services.
The relationship between all the participating services is described by a single endpoint (i.e., the composite service). The orchestration includes the management of transactions between individual services. Orchestration employs a centralized approach for service composition.
Service choreography is a global description of the participating services, which is defined by the exchange of messages, rules of interaction, and agreements between two or more endpoints. Choreography employs a decentralized approach for service composition.
The choreography describes the interactions between multiple services, whereas orchestration represents control from one party's perspective. This means that a choreography differs from an orchestration with respect to where the logic that controls the interactions between the services involved should reside.