Jarlath O’Rourke’s double helped Crusaders to a 3-2 victory over Linfield in the Co Antrim Shield quarter-finals.
Harry Franklin headed in the opener for the Seaview hosts while Chris Shields and Liam Burns netted for Linfield.
Paul O’Neill hit all four second-half goals for Larne as the holders continued their bid for a fifth straight Shield success with a 4-0 win over Newington at Inver Park.
Jay Donnelly and Jordan Jenkins were on target in Glentoran’s 2-0 home victory against Carrick Rangers.
Aaron Jarvis scored the only goal as Premiership pacesetters Ballymena United beat Cliftonville 1-0 at Solitude.
Crusaders got off to the perfect start when Franklin headed home from Ross Clarke’s cross after just two minutes.
O’Rourke doubled the lead after 38 minutes by firing into the Blues net from the edge of the box.
Linfield pulled one back 14 minutes from time when Shields made no mistake from a penalty after Jimmy Callacher’s foul on Matthew Fitzpatrick.
Crusaders quickly restored their two-goal advantage in fortuitous fashion with an attempted clearance striking O’Rourke and going in past keeper David Walsh.
Liam Burns made it 3-2 in added time from a free-kick but the Crues held on to make the semi-finals.
It was the Paul O’Neill show for a much-changed Larne team with his four-goal blast against Championship basement side Newington.
The striker headed home the opener from Mark Randall’s corner on 66 minutes before Jordan McEneff set up O’Neill for a 12-yard finish.
O’Neill capitalised on a defensive error for his third and brought up number number from the penalty spot after a foul on Conor McKendry.
Last season’s finalists Glentoran overcame Carrick at the Oval with Donnelly setting the hosts on their way by rifling into the roof of the net on 19 minutes.
A second-half turn and shot from substitute Jordan Jenkins sealed the victory.
Just one goal at Solitude but it was precious one for Ballymena with Jarvis hitting the Cliftonville net in the 36th minute.