If you want to move individual files or folders, using MoveV2Async is the right way to do so. In that case though, if you have multiple to move, you would do need to do so serially, as calling MoveV2Async multiple times in parallel will likely cause lock contention.
If you want to move multiple items at one time, it's better to use one call to MoveBatchV2Async instead. That will allow you to move multiple items at once without causing lock contention with yourself. It is still possible for this to hit lock contention with other activity in the account though, so you do still need to implement error handling around this.
It sounds like you already tried that, so if it's not working as expected, please share the relevant code and error you're getting.
... View more