Might want to review this:
It talks about batching and queuing of actions. Note that in the optional background mode, Don’t rely on each background action being sent in its own request as that behavior isn’t guaranteed and it can lead to performance issues. Remember that the motivation for background actions is to isolate long-running requests into a separate request to avoid slowing the response for foreground actions.
In general one event loop in Lightning sees multiple foreground actions queued into one Apex call and I think this may mean sharing governor limits. But by nature a front-end callback method is only fired after the Apex transaction is over, so yes any new call to Apex is in a new transaction with new governor limits.
Limit wise, you're mainly dealing with the boundaries of the browser and Locker Service. However when calling to Apex you do have a request payload limit of 4MB:
The main reason for the Visualforce limits is that VF posts the entire view state back and forth with every little request. In Lightning you only send as much back and forth as you define.