Orlando City booked their place in the second round of the Eastern Conference semifinals with a dramatic 4-1 penalty shootout win over Charlotte FC.

The Lions had Facundo Torres to thank, as he scored a last-minute goal to force spot-kicks, where Charlotte were twice denied by Pedro Gallese.

Orlando had the better of a tight first half, with Torres hitting the base of the right post before sending a header against the crossbar within the first 21 minutes.

Patrick Agyemang thought he had given Charlotte the lead against the run of play just before the break, but his lob was ruled out for offside.

Charlotte eventually broke the deadlock in the 81st minute, Karol Swiderski getting a stroke of luck as his shot deflected in off Rodrigo Schlegel.

It looked like Orlando's chance was gone when Torres saw his 102nd-minute penalty saved, but the Uruguayan kept his composure to slot in the rebound.

He scored one of the hosts' four penalties but Gallese proved the hero, denying both Pep Biel and Swiderski with fine saves to send them through and set up a meeting with Atlanta United.

Data Debrief: Leaving it late

If Orlando were going to find a way back into this game, it was always going to come through Torres, who proved a thorn in Charlotte's side from the first whistle.

He had six shots in this game, though only hitting the target twice (his saved penalty and the follow-up goal), and netted his 16th goal in MLS this season when he finally hit the back of the net.

While Charlotte suffered late heartbreak, it was a deserved win from Orlando, who dominated from the off by creating 2.41 expected goals from their 20 shots.