Gareth Southgate watched his side hit the woodwork on multiple occasions during the 120 minutes in Guimaraes, leaving England with the opportunity to win their second shootout in the space of 12 months.
England toiled during the closing hour of their semi-final defeat to the Netherlands on Thursday, but the Three Lions almost went in front after two minutes when Harry Kane saw his lob diverted onto the top of the crossbar by Yann Sommer.
Switzerland had the better of the opening quarter-of-an-hour, however, despite their only opportunity coming through Remo Freuler, who had a left-footed volley from 16 yards comfortably saved by Pickford.
Southgate’s side should have gone in front with 10 minutes of the first half remaining, but Alli somehow headed off target from 10 yards after meeting a delightful cross from Trent Alexander-Arnold.
Both teams showed greater intent after the restart – perhaps eager to avoid an extra 30 minutes – and England soon went close again after positive work down the left.
A low cross from Rose was intended for Kane but it was Fabian Schar who diverted the ball towards the far corner, leaving Sommer to make a fine finger-tip stop to send the ball onto the post.
Switzerland went straight down the other end as Granit Xhaka saw a 15-yard effort parried away by Pickford, which suggested that both teams would produce an entertaining spectacle during the final half-hour.
However, constant goalmouth action did not materialise, and the most notable action during the closing quarter came when England had another goal chalked off through VAR.
England continued to look the more likely to find a goal in the first period of extra time as Eric Dier sent a header wide of the near, an effort which was quickly followed by Alli seeing his own header brilliantly kept out by the impressive Sommer.
Ross Barkley and Jadon Sancho injected more pace into England’s play after their introduction at the midway point, although England went closest through a Sterling free kick from 20 yards which struck the crossbar.
England would have felt hard done-by having created all of the best chances throughout the contest, but Southgate would have seen the benefits of his team being involved in another shootout, almost a year on from getting the better of Colombia at the World Cup.
Opportunities were provided to Harry Maguire, Barkley, Sancho, Sterling, Pickford and Dier – with each effort being confidently converted – before Pickford outwitted Drmic to dive to his right to make the decisive save.
SWITZERLAND (3-5-1-1): Sommer; Schar, Akanji, Elvedi; Mbabu, Fernandes (Zakaria 61′), Xhaka, Freuler, Rodriguez (Drmic 87′); Shaqiri (Zuber 65′); Seferovic (Okafor 113′)
ENGLAND (4-3-3): Pickford; Alexander-Arnold, Gomez, Maguire, Rose (Walker 70′); Delph (Barkley 106′), Dier, Alli; Sterling, Kane (Wilson 75′), Lingard (Sancho 106′).