Root Motion for characters movments and attacks

Hello everyone,
Should I used root motion on all animations even the base movements animation (walk, run, jump), or use it on complex animations like attacks, for example: attacks that need a step forward when character swing with sword or when character is hit and take step backward.
Thanks in advance and appreciate your helpful comments.