Bruce Anstey brought his haul of career Ulster Grand Prix victories to 10 by earning Superbike and Supersport wins at the weather-affected meeting.
Anstey earned a thrilling Supersport win after long-time leader William Dunlop suffered a late engine blow-out.
New Zealander Anstey then produced a dramatic late move to finish ahead of Guy Martin in the Superbike race.
Earlier, Isle of Man rider Dan Kneen earned his first Ulster Grand Prix win as he took Superstock victory.
The wet and windy conditions led to the cancellation of both the main Superbike race and Supersport Race 2 although five of the scheduled seven classes did take place.
Several of the races had to be re-started following rider spills in difficult conditions with parts of the circuit wet and other sections dry.
Organisers eventually opted to abandon the second Supersport race in the hope that they might be able to stage the concluding Supertwins and main Superbike races.
The lower-powered Supertwins race did take place but with the conditions deteriorating, the second Superbike race was cancelled
Martin led at the end of every lap in the opening seven-lap Superbike race bar the closing circuit.
Lincolnshire rider Martin, 32, was followed closely by Anstey and Lee Johnston over the opening three laps before Michael Dunlop started to challenge the three leaders.
Anstey and Martin then swapped the lead on laps five and six but the Englishman appeared to be in control early on the final circuit as he forged a lead of around 200 metres.
However, the Tyco Suzuki rider was hindered by back markers which allowed Anstey to get back into contention.
Anstey then out-braked Martin late on the final lap to regain the lead and take a tremendous victory with Johnston, Dunlop, Peter Hickman and Daley Mathison completing the top-six positions.
In Supersport Race 1, Anstey caught Dunlop on the penultimate lap but the Ballymoney man had regained the lead before his late misfortune as his engine failed.
The win gave Anstey his ninth Ulster Grand Prix win as Fermanagh rider Johnston and Martin completed the podium spots.
In the closest finish in Ulster Grand Prix history, Kneen, 27, edged out England's Dean Harrison by a mere one-thousandth of a second to win the Superstock class with Anstey a further tenth of a second further back in third.
The opening Supersport race, eventually won by Anstey, had to be halted after less than half a lap after a spill involving three riders in damp and windy conditions.
Race organisers said that the riders involved had not suffered life-threatening injuries.
James Cowton repeated his Dundrod 150 Lightweight class win on Thursday as he finished ahead of John Ella and Ian Morrell with Mathison pipping Christian Elkin in an exciting Ultra Lightweight duel.
The wins gave Cowton and Mathison their first Ulster Grand Prix victories.
Elkin led for most of the Ultra Lightweight race but was hindered by a backmarker on the final corner which allowed Mathison to win with Paul Jordan taking third.
In the opening Superstock class, Dean Harrison was leading by five seconds when the race was halted after one lap because of rain.
When the class was re-started as a five-lap race, Harrison was unable to break clear of the field and he became involved in an exciting battle with Kneen and Anstey.
Crumlin man Stephen Thompson was the best Northern Ireland finisher in fourth with event newcomer Hickman in fifth and Guy Martin sixth.
Michael Dunlop retired early in the re-started race after his visor problems had led to a brief delay.
After the abandonment of the second Supersport race, the Supertwins race did take place in wet conditions with Lincolnshire man Ivan Lintin finishing ahead of Mullingar rider Derek McGee and James Cowton.
ULSTER GRAND PRIX RESULTS
1. Dan Kneen
2. Dean Harrison [.001secs behind]
3. Bruce Anstey [.109]
4. Stephen Thompson [15.441]
5. Peter Hickman [15.832]
6. Guy Martin [17.569]
1. James Cowton
2. John Ella [30.243]
3. Ian Morrell [51.158]
4. Trevor Reid [1:23.443]
5. John McAllister [1:28.736]
6. Paul Maguire [1:48.474]
1. Daley Mathison
2. Christian Elkin [.228]
3. Paul Jordan [44.015]
4. William Cowden [44.219]
5. Craig Gibson [1:12.440]
6. Sam Dunlop [1:31.787]
Supersport Race 1
1. Bruce Anstey
2. Lee Johnston [6.439]
3. Guy Martin [18.756]
4. Ivan Lintin [39.421]
5. James Cowton [43.193]
6. Russ Mountford [46.638]
Superbike Race 1
1. Bruce Anstey
2. Guy Martin [.260]
3. Lee Johnston [4.829]
4. Michael Dunlop [7.421]
5. Peter Hickman [45.290]
6. Daley Mathison [47.162]
1. Ivan Lintin
2. Derek McGee [14.394]
3. James Cowton [23.254]
4, Christian Elkin [34.081]
5. Connor Behan [46.372
6. Ian Morrell [1:02.263]