After a tight first half, The Downs were 0-8 to 0-6 ahead at the break. Garrycastle then squeezed in front when Gary Dolan scored a penalty in the 40th minute.
The Downs regained the lead though when PJ Maguire goaled from close range with nine minutes remaining.
The Downs then squandered a great chance to pull away when Luke Loughlin saw his 52nd minute penalty saved by Cathal Mullin.
Garrycastle went downfield and scored three points from James Duignan, James Dolan and sub Michael Monaghan to hold out for victory.
Both semi-finals will take place in Mullingar next Sunday, when Garrycastle face St. Loman’s from Mullingar, and holders Mullingar Shamrocks play Tyrrellspass.