Brazil's hopes of a first Olympic women's football gold came to an end with a 4-3 penalty shootout defeat by Sweden in the semi-final. The Swedes will play Germany, who beat Canada 2-0, at the Maracana on Friday in the final.

The match went into penalties after the sides were goalless following extra time on Tuesday. Sweden, whose previous best showing at an Olympics was fourth place in 2004, will now face tough task of overcoming second-ranked Germany for the gold.

Lisa Dahlkvist scored the crucial penalty on Sweden's fifth attempt after Brazil’s Andressa saw hers saved by Hedvig Lindahl. Brazil's Cristiane and Sweden's Kosovare Asllani also had their kicks saved. Brazil had most of the possession during the match and had 33 shots on goal, compared to Sweden's six.

Play

In the other semi-final match, Germany ensured it was an all-European final as goals from Melanie Behringer and Sara Dabritz earned them victory over the 2012 bronze medallists Canada.

Behringer, with her fifth goal of the tournament, opened the scoring from the penalty spot after Kadeisha Buchanan fouled Alex Popp in the area. Dabritz added the second goal after the break when she fired in from the edge of the area.

The results:

Sweden 0 draw with Brazil 0, win 4-3 on penalties.

Germany 2 (Melanie Behringer, Sara Dabritz) beat Canada 0.