A last-gasp point by wing back Conor McCarthy broke Kildare hearts at O'Connor Park and sent Monaghan into the All-Ireland quarter-finals.

A Neil Flynn free in the 70th minute put Kildare into the lead going into injury-time but a Jack McCarron free levelled things, and then McCarthy was the Monaghan hero when he struck even later.

While he proved to be Monaghan’s match-winner, they also had reason to thank their goalkeeper Rory Beggan for two magnificent saves in the first half to deny Daniel and Neil Flynn.

Kildare also hit the crossbar in the second half through Darragh Kirwan on a frustrating evening for Glenn Ryan’s team.

McCarthy was among the scorers early on too. He found the Kildare net after five minutes after a slick move opened up the Kildare defence.

The Lilywhites battled back well after that and Ben McCormack in particular caused Monaghan huge problems. He scored four points in the first half for Kildare but in a huge blow for his team’s chances he injured himself when creating a point for Darragh Kirwan with the last kick before the break.

Jack McCarron and Mick O'Grady exchange pleasantries

That left Kildare 0-09 to 1-05 ahead as the teams headed to the dressing room but although McCormack reappeared for the second half, he only lasted another seven minutes before he had to be replaced.

Kevin and Neil Flynn scored the first two points of the second half to push Kildare three clear, before Darren Hughes scored Monaghan’s first of the second half from a 46th-minute mark.

After Kirwan had rattled the Monaghan crossbar, McCarron cut the gap back to a point in the 50th minute but Alex Beirne quickly replied to leave two between the sides again. However, Kildare would go on to score only one more point in the remaining minutes.

Gary Mohan and McCarthy scored to tie up the game before Flynn converted that 70th minute free to put Kildare within touching distance of victory but Monaghan weren’t done and those two late, late scores secured a place in the quarter-finals in Croke Park next weekend.

McCarthy scored 1-02 from play

Monaghan: Rory Beggan (0-01f); Conor Boyle, Killian Lavelle, Kieran Duffy; Ryan O'Toole, Dessie Ward, Karl O'Connell; Gary Mohan (0-01m), Darren Hughes (0-01m); Conor McCarthy (1-02), Michael Bannigan (0-03, 2f), Stephen O'Hanlon; Karl Gallagher, Ryan McAnespie, Jack McCarron (0-03, 1f).

Subs: Shane Carey for McAnespie (33), Conor McManus for Gallagher (ht), Ryan Wylie for O'Toole (59), Kieran Hughes for Ward (68), Sean Jones for Carey (70).

Kildare: Mark Donnellan; Mick O'Grady, Eoin Doyle, Shea Ryan; David Hyland, Kevin Flynn (0-01), Jack Sargent; Kevin O'Callaghan, Kevin Feely; Paddy McDermott, Alex Beirne (0-02), Ben McCormack (0-04, 1m); Darragh Kirwan (0-01), Daniel Flynn, Neil Flynn (0-05, 3f, 1 '45).

Subs: Jack Robinson for McCormack (43), Darragh Malone for Hyland (66), Paul Cribbin for D Flynn (70), Jimmy Hyland for Flynn (73).

Referee: Jerome Henry (Mayo).