A Willie Faloon double inspired Connacht to a first win over Cardiff Blues in four years.
The visitors had not conquered the Blues since September 2009, but completed a Welsh double following last week's victory over the Ospreys, with a gutsy performance.
Danie Poolman and Faloon both crossed in an electric start for the visitors, who led 15-8 at the interval.
Cardiff fought back to take the lead, but Faloon crossed for a second try to take the spoils.
The victory sees Eric Elwood's men close the gap on seventh-placed Cardiff to five points in the Pro12 table.
Connacht were dealt a blow when former Cardiff fly-half Dan Parks pulled out of the encounter due to a hamstring strain.
But they made a perfect start at a bitter Arms Park and caught Cardiff cold. They dominated the opening spell and worked an overlap to send Poolman into the corner after two minutes.
The visitors continued to control affairs and they soon stretched their lead. Brian Murphy sliced through the Cardiff midfield, he was caught by Rory Watts-Jones but managed to offload to Faloon.
Miah Nikora slotted the conversion to give Connacht a 12-0 lead after five minutes, before Rhys Patchell hit back with a penalty.
Buoyed by their first points, the hosts grew into the encounter and following several phases Patchell drew Poolman and Gavin Duffy to release Harry Robinson.
Patchell missed the conversion and Nikora added a penalty on the half-hour.
The hosts made a bright start to the second half and Jason Harris-Wright was sent to the sin-bin, with Patchell slotting the penalty. Nikora hit back for Connacht, but the Blues soon went in front for the first time. Liam Davies raced down the touchline and flicked an offload inside, which bounced to Wexford-born No 8 Robin Copeland.
But the lead did not last long as Faloon crossed from the back of a solid scrum. Nikora failed to add the extras and Patchell chipped away to reduce Connacht's lead to a single point. But Nikora restored Connacht's four-point advantage and they held on despite a late rally.
CARDIFF – C Czekaj; O Williams, R Smith, G Evans (capt), H Robinson; R Patchell (C Sweeney 76), L Jones (L Davies 66); T Filise, K Dacey (R Williams 66), B Bourrust (S Andrews 58), M Cook (T Young 76), J Down, M Paterson, R Copeland, R Watts-Jones.
CONNACHT – G Duffy (capt), D Poolman, E Griffin, B Murphy, F Vainikolo, M Nikora, K Marmion (P O'Donohoe 69), B Wilkinson (D Buckley 58), J Harris-Wright (E Reynecke 53), N White (R Loughney 58), M Swift, A Browne, J Muldoon, W Faloon, E McKeon (M Kearney 69).
Ref – D Phillips