|European Rugby Challenge Cup|
|Northampton (22) 27|
|Tries: Mitchell, Freeman 2, Sleightholme Cons: Francis 2 Pen: Francis|
|Ulster (14) 35|
|Tries: Penalty, Herring, Moore, Cooney, Stockdale Cons: Cooney 4|
Ulster were rewarded for their patience as they won at Northampton to reach the European Challenge Cup semi-finals.
Saints had three players sin-binned but still had an eight-point half-time lead through a clever Alex Mitchell finish and two quickfire Tommy Freeman tries.
Marty Moore powered over as Ulster came back but Ahsee Tuala's fine offload put Ollie Sleightholme in for a home score.
However, John Cooney went over after a short lineout and Jacob Stockdale ran through to give the Irish side victory.
The teams observed a two-minute silence before the game in memory of Prince Philip, the Duke of Edinburgh, who died on Friday aged 99.
Northampton, fifth in the Premiership, had flanker Nick Isiekwe yellow-carded for a shoulder charge and hooker Sam Matavesi sent to the sin-bin for collapsing a maul - which also gave Ulster a penalty try - as they played part of the first quarter with only 13 men.
No sooner had they returned then David Ribbans also had a 10-minute spell off the pitch as Chris Boyd's side lacked discipline.
Ulster did briefly make their man advantage tell, Rob Herring taking the acclaim after a successful maul, but two Freeman tries in two minutes towards the end of the half - the second a breakaway score after number eight Teimana Harrison stole the ball from a ruck - stunned their Pro14 opponents, who had looked on top.
However, Ulster did find their clinical edge after the break, prop Moore going over after a strong carry from Nick Timoney and Billy Burns showing great hands to release Stockdale for the game-clinching try.
Saints have now lost their past six European fixtures against Irish opposition, the previous five having come in the Champions Cup, while Dan McFarland's side will contest their first European semi-final since 2012.
They will join Bath, Leicester and Montpellier in Sunday's Challenge Cup semi-final draw.
Northampton: Freeman; Sleightholme, Hutchinson, Francis, Naiyaravoro; Biggar, Mitchell; Waller (co-capt), S Matavesi, Hill, Ribbans, Coles, Isiekwe, Ludlam (co-capt), Harrison
Replacements: Haywood, Auterac, Painter, Moon, Wood, James, Tuala, Dingwall
Sin-bin: Isiekwe (9), Matavesi (11), Ribbans (23)
Ulster: Lowry; Baloucoune, Hume, McCloskey, Stockdale; Burns, Cooney; O'Sullivan, Herring, Moore, O'Connor, Treadwell; Reidy, Murphy (capt), Timoney
Replacements: Andrew, Warwick, O'Toole, M Rea, Jones, Mathewson, Madigan, McIlroy
Referee: Alexandre Ruiz (Fra)