Munster's cause had not being helped by the late withdrawal of influential number 9 David O'Driscoll whose place was taken by Brian Slater with Gavin Nugent coming onto the bench. However, they enjoyed much the better of the opening exchanges and scored their opening try in the 32nd minute through centre Michael Kelleher. Cormac O'Flynn converted and added a penalty three minutes later to give his side a 10-0 lead.
Indiscipline in injury time allowed cost Munster valuable territory and from a lineout the westerners drove over for a try with the conversion leaving them trailing by just three points at the break.
That lead stretched to 15 with O'Dea's try but Connacht began to get on top in the set piece with O'Halloran's try setting them alight. Conor Murphy's conversion of O'Halloran's try made it a one point game and with six minutes remaining, Connacht number 8 Shane Conneely scored the all decisive try.
Munster had their opportunities in the closing stages but were unable to capitalise.
Their next game is on Friday evening (7.45pm) against Leinster in Thomond Park Stadium.
Munster U20. Luke O'Dea; Craig O'Hanlon, Michael Kelleher, Gareth Quinn McDonagh, Simon Zebo; Cormac O'Flynn, Brian Slater; Brian Cagney, Duncan Casey, Brendan Cullinane; Sean Duggan, Brian Hayes; David O'Callaghan, John Quill, Patrick Butler. Replacements: JP Cooney, Ger Burke, Edward Kelly, Johnny MacCarthy, Gavin Nugent, Kevin Kidney, Darren Moroney.