Double infinitives in the past
When a modal governs another infinitive in Perfekt, use haben plus two infinitives: hat arbeiten müssen. In a subordinate clause, the finite auxiliary precedes the infinitive group: weil er hat arbeiten müssen.
Understand the idea
When a modal governs another infinitive in Perfekt, German normally uses an Ersatzinfinitiv instead of the modal's ordinary participle. The result is haben plus two infinitives. A modal used without a dependent infinitive may follow a different participle pattern.
Build it step by step
In a main clause, conjugate haben and put the lexical infinitive before the modal infinitive at the end. In the standard subordinate pattern with this double infinitive, the finite haben stands before the infinitive group rather than after it. This is an important exception to the beginner shortcut that every subordinate verb simply goes last.
See it in a sentence
Ich habe gestern arbeiten müssen.
Sie hat lange warten müssen.
A useful memory aid
Learn one complete main-clause frame and one subordinate frame as a pair. Work with two verbs before trying longer verb clusters.
A common trap
Do not use gemusst or gekonnt mechanically when another infinitive is governed. Also do not move finite haben to the very end of this standard double-infinitive subordinate pattern.