That brought them up against Cameroon in the last eight and the Africans gave England an almighty shock.
With 38-year-old Roger Milla once again excelling as a second-half substitute, Cameroon took a 2-1 lead before two Gary Lineker penalties helped England through, again after extra-time.
A solitary goal from the prolific Toto Schilaci saw Italy beat Ireland to move into the last four, where they played Argentina in Naples, while England faced their old rivals.
Both matches went to penalties, with Germany and Argentina winning to set up a re-match of the 1986 final.
England lost the third-place play-off 2-1 to the hosts, but Germany gained revenge for their defeat by Argentina four years before.
Brehme coolly converted the decisive penalty in the 85th minute to win the Germans their third title.
Argentina became the first side not to score in the final and to have not one, but two players sent off.
Group 1 results:
Italy 1-0 Austria
Czechoslovakia 5-1 United States
Italy 1-0 United States
Czechoslovakia 1-0 Austria
Austria 2-1 United States
Italy 2-0 Czechoslovakia
Group 2 results:
Cameroon 1-0 Argentina
Romania 2-0 USSR
Argentina 2-0 USSR
Cameroon 2-1 Romania
USSR 4-0 Cameroon
Argentina 1-1 Romania
Group 3 results:
Brazil 2-1 Sweden
Costa Rica 1-0 Scotland
Scotland 2-1 Sweden
Brazil 1-0 Costa Rica
Costa Rica 2-1 Sweden
Brazil 1-0 Scotland
Group 4 results:
Colombia 2-0 UAE
West Germany 4-1 Yugoslavia
Yugoslavia 1-0 Colombia
West Germany 5-1 UAE
Yugoslavia 4-1 UAE
West Germany 1-1 Colombia
Group 5 results:
Belgium 2-0 South Korea
Uruguay 0-0 Spain
Spain 3-1 South Korea
Belgium 3-1 Uruguay
Uruguay 1-0 South Korea
Spain 2-1 Belgium
Group 6 results:
England 1-1 Rep of Ireland
Holland 1-1 Egypt
England 0-0 Holland
Rep of Ireland 0-0 Egypt
England 1-0 Egypt
Rep of Ireland 1-1 Holland
Second round results:
Czechoslovakia 4-1 Costa Rica
Cameroon 2-1 Colombia (aet)
West Germany 2-1 Holland
Argentina 1-0 Brazil
Rep of Ireland 0-0 Romania (aet)
(Rep of Ireland win 5-4 on penalties)
Italy 2-0 Uruguay
England 1-0 Belgium (aet)
Yugoslavia 2-1 Spain
Quarter-finals results:
Argentina 0-0 Yugoslavia (aet)
(Argentina win 3-2 on penalties)
Italy 1-0 Rep of Ireland
West Germany 1-0 Czechoslovakia
England 3-2 Cameroon (aet)
Semi-finals results:
Argentina 1-1 Italy (aet)
(Argentina win 4-3 on penalties)
West Germany 1-1 England (aet)
(West Germany win 4-3 on penalties)
3rd/4th place play-off:
Italy 2-1 England
World Cup Final:
West Germany 1-0 Argentina