Is it possible to make a change that affects the whole animation but keeps the original animation relative to the change? (like 3ds Max) [Sorry for the long post, I tried to keep it short but that's the best I was able to do]
I tried to make the question as simple as I could but I think it will be clearer with an exemple (animators familiar with 3ds Max might find it easier to undersand because that's something Max does by default):
Imagine you have an object, a cube, and you animated the position (location) of that cube. So you have, for exemple, 4 keyframes:

Frame zero: 0,0,0
Frame five: 0,5,5
Frame ten: 5,10,5
Frame fifteen: 5,10,10

After you set the keyframes you realized you needed the cube to start not at 0,0,0, but some other location (like 100,100,100). But you still want the animation to play the same relative to the initial location, regardless of where that initial location is.
In 3ds Max, you just turn off auto-keyframing, and then you can simply move the cube to the new starting location and the animation will update relative to the change you made, without setting any new keyframes. So, with auto-keyframing turned off, you go to frame zero and move your cube to the desired starting location, for exemple 100,100,100.
Then the animation will be:

Frame zero: 100,100,100
Frame five: 100,105,105
Frame ten: 105,110,105
Frame fifteen: 105,110,110

The animation keeps exactly the same, but offset by the change you made when auto-keyframing was off.
As you all know, Blender doesn't work that way: if you try to move an animated object with auto-keyframing turned off and you don't set the keyframe, the change just doesn't 'take' and the object's location reverts back to where it was in the animation. If you set the keyframe, the location will be update only in that keyframe, but other keyframes won't be updated relative to this new location.
I know I can parent the cube to an empty and move the empty, and that works for a simple animation such as the one I described, but now imagine the cube is actually a bone in a complex bone chain, and you are animating the rotation instead of the location. It's already parented to other bones, and parenting it to something else will break the armature.
So that's the question: is there a way to make a single change that 'offsets' the values of all the keyframes in the animation?
Let's start with a simple animation.

With the Delta Transforms
I think this would be the preferred way to do it since it is pretty straightforward.
Head in to the object properties and expand the Delta Transforms panel. There you can add an additional transform that will be added to the animation.

Note the Delta Transforms can also be animated.
With the graph editor :
Hide all the channel you want don't want to offset. Select the channels you want to offset with A while hovering over the curves.

Now type G, Y, 100 and Enter to validate. This will grab (G) the curves, and move them uniformly along the Y axis (the actual transforms values) by 100 units.
Note that if you press G, X and a value this will offset the keyframes along the time axis.
You can also access the Grab tool by going Key &gt; Transform &gt; Move