Terminology question on band-shifting
Complex band shifting is a little more flexible than real band shifting and filtering, and may be a little more efficient too, though if you change the sample rates when moving a signal to baseband that may not be true.

You are correct that you can move your signal to 0 to $f_2-f_1$ Hz in the method that you describe.  You could do the same thing in one step by multiplying the pass band signal by a complex sinusoid with a frequency of $-f_1 $.

Also, when you band shift with a real sinusoid you have to watch out for aliasing.  Band shifting with a complex sinusoid never causes aliasing (unless you reduce the sample rate at the same time, of course).