A thrilling game, with German dominance in the first 45 minutes, allowed Dortmund to secure their passage to the UEFA Champions League semi-final.