German's everyday past tense isn't a single verb form like English "-ed" - it's built from two pieces: a helper verb (haben or sein) conjugated normally, plus a past participle at the end of the sentence. This is the past tense you'll actually hear and use in speech.
[haben or sein, conjugated] + ... + [past participle, at the end]
| Ich habe Deutsch gelernt. | I learned German. |
| Ich bin nach Berlin gefahren. | I went to Berlin. |
The large majority of verbs use haben. Use sein only for verbs of motion/change of state - fahren (to travel/drive), gehen (to go), kommen (to come), sein itself, werden (to become). If in doubt, haben is the safer default guess at A1.
For regular verbs, wrap the stem in ge-...-t:
| Infinitive | Stem | Participle |
|---|---|---|
| lernen | lern | gelernt |
| machen | mach | gemacht |
| wohnen | wohn | gewohnt |
| kaufen | kauf | gekauft |
| sein | gewesen | (with sein) |
| haben | gehabt | (with haben) |
| gehen | gegangen | (with sein) |
| fahren | gefahren | (with sein) |
| kommen | gekommen | (with sein) |
| essen | gegessen | (with haben) |
| trinken | getrunken | (with haben) |
These irregular ("strong") participles don't follow the -t pattern (ge-...-en instead, often with a vowel change) and simply need memorizing one at a time, the same way English irregular past tenses do (go→gone, not "goed").
The ge- is inserted between the prefix and the base verb, and the whole participle stays together at the end (no further splitting):
einkaufen → Ich habe eingekauft.
aufstehen → Ich bin um sieben aufgestanden.
Cross-checked against the Goethe-Institut A1 practice materials.