After a tight opening, a 14th minute Conor Loftus penalty was enough to send the Connacht champions to the dressingrooms three points to the good.
Caragh had finished the half with late points from Daragh Swords and Ryan Burke to give themselves a chance after the break.
Crossmolina opened the second-half in style and Fionnan Duffy, Jason Flynn and Patrick Leddy helped push them into an unassailable nine-point lead.
Caragh had no answer to a more physical Mayo side and two late points from Eoghan Ó Haire and Jake Corrigan was their lot for the day.
Crossmolina are into the final next weekend and based on today’s performance you wouldn’t bet against them going all the way.
Scorers – Crossmolina: C Loftus 1-2 (1 penalty), F Duffy 0-3, J Flynn 0-3, D Goggins 0-1, J Maheady 0-1, P Leddy 0-1, M Loftus 0-1. Caragh: E O Haire 0-2 (1 free), D Swords 0-2, R Burke 0-1, J Gannon 0-1.
Crossmolina Deel Rovers: JP Mulhern, D Fox, K Mulhern, M Gordetskyy, A Goggins, C Loftus, L Loftus, M Loftus, J Flynn, D Goggins, J Maheady, N Goggins, D Walsh, P Leddy, F Duffy. Subs: S Duffy for D Walsh 50, K Fergus for L Loftus 56, C Carolan for P Leddy 57, D Howley for F Duffy 59, F Duffy for M Gordetskyy 63.
Caragh: M Behan, C McKennedy, M McNally, B Byrne, C Sullivan, R Burke, P Dockery, K Connor, D Lynam, J Gannon, D Swords, D Murray, R Doorey,J Corrigan, E O Haire. Subs: A Keogh for B Byrne 50, K Campbell for J Gannon 50, B Kelly for C Sullivan 50, D Campbell for R Doorey 54, A Nevin for P Dockery.
Referee: K Eanetta (Tyrone).