Action classes are like helper functions. They should work in isolation, be passed the parameters they need, and (optionally) return a result. An action class holds no state.
Service classes are more for related functions, that can be called from anywhere in your application. For instance, I would probably implement a shopping cart as a service. The service might initiate a basket, add or remove items, return a total, persist the basket to storage etc. A service class can hold state.
You would not code cart functions in a controller because multiple controllers could require the services of a cart.
You could put the functionality of an action as a controller function, but as soon as you need that same function in other places, it becomes a candidate to be removed to an action.
Hope that helps clarify the difference.