Send Tasks and Service Tasks have more or less identical execution semantics.
But their visual differences are important.
For good practice a company might decide to use a Send Task only to indicate communication over network. This could help users when reading the model to understand when communication with other systems happen. When a Service task may simply indicate the execution of “local” code, like Java Classes.
But this is all considered to be a best practice approach rather than hard and fast rules.