Paul Geaney kicked six points from play as Kerry struggled for long periods before they finally clinched a Munster Senior Football Championship final berth with a 1-17 to 1-13 victory over Clare at Cusack Park.
An early black card for Shane Hickey was a big blow for the home side, but they managed to recover well from that setback and Paul Murphy's ninth minute goal to just trail by a point at half-time.
But after the restart Eamonn Fitzmaurice's side – led by Geaney and Bryan Sheehan - performed far better and survived the sending off of Anthony Maher to work their way into the final where they will meet arch-rivals Cork.
Early points from Martin O'Leary and Sean Collins either side of a Bryan Sheehan free got the home side off to a great start, but that early double blow could have rocked the Banner men back on their heels.
However, Clare showed huge spirit and skill and kicked 1-03 without reply between the 15th and 19th minutes to take control. Shane Brennan rounded off a great team move with the first score, Shane McGrath landed a fine point soon after, Enda Coughlan did likewise, before McGrath rattled the net following a piercing run from Podge Collins to give Clare a 1-05 to 1-02 advantage.
Kerry kicked three of their own in a row from Declan O'Sullivan, Paul Geaney and Maher to the level the game by the 23rd minute, but a storming finish to the half from Clare saw David Tubridy land two points as they lead by 1-08 to 1-07 at the interval.
Kerry looked shook at the break, but three points in a row after the restart saw them take control of the game, and they hardly relinquished that grip.
Stephen O'Brien, Paul Geanay and Sheehan kicked the points to put them in control, and after Coughlan replied for Clare and other brace of scores from Geaney and Sheehan put three points between the sides once again.
Maher picked up his second yellow card ten minutes from time for a foul on Gary Brennan, but Kerry held on for the win despite late points from Tubridy and Eoin Cleary.
Kerry: B Kelly; P Murphy (1-00), M O Se, S Enright; P Crowley, K Young, F Fitzgerald; A Maher (0-01), D Moran; Darran O’Sullivan, B Sheehan (0-04, 0-01f), M Geaney (0-01); S O’Brien (0-02), Declan O’Sullivan (0-02, 0-01f), P Geaney (0-06).
Subs: A O'Mahony for Moran (23), BJ Keane (0-01) for Darren O'Sullivan (27-28 blood), D Walsh for Darren O'Sullivan (h-t), Jonathan Lyne for M Geaney (54), B J Keane for O'Brien (63), C Donaghy for P Geaney (67), P Kilkenny for Fitzgerald (67).
Clare: J Hayes; M Mc Mahon, K Harnett, D Ryan; C Russell, G Kelly, S Hickey; G Brennan, S McGrath (1-02); S Collins (0-01), P Collins, S Brennan (0-01); M O’Leary (0-01), D Turbidy (0-04, 0-02f), E Coughlan (0-02).
Subs: J Malone for Hickey (6 BC), R Donnelly (0-01) for O'Leary (45), S McNelis for Hartnett (53), C O’Connor for S Brennan (60), E Cleary (0-01) for Coughlan (69).