In a typically battling drive, Frijns made multiple well-judged passes to move up the order and ultimately claim a podium finish, dispatching Nissan's Sebastien Buemi first before getting into the race lead battle with the front trio of cars.
As Lucas di Grassi and Stoffel Vandoorne battled for second, Frijns pounced to follow di Grassi past and claim third, which let Cassidy drop the two behind.
But amid the intensifying rain, both Cassidy and di Grassi ahead went into the barrier at Turn 6, while Frijns made it through the corner, coming out of it with the lead.
Once the race was red-flagged, Frijns conceded that he thought he was going to be credited with the win before the countback regulation was employed, deciding the race in favour of Cassidy - which Frijns felt was fair.
"First of all the start was really good; I was super surprised that I got actually two guys already before Turn 1," Frijns recalled.
"Obviously I was starting on the clean side of the track but at the beginning I felt really confident straight out of lap 1.
"I was searching how to play the overtaking game at the beginning, so I wanted to save a bit more energy so it was probably easier at the end - which basically happened and soon after I overtook Buemi, I closed the gap to Lucas and Stoffel quite quickly.
"I had good pace in me but then the rain came, I saw Lucas in a 90 degree angle in front of me which is never good and I was basically the only one that survived that shunt in Turn 6.
"I was standing in the pitlane thinking I won the race, but the rule with the red flag is obviously a good one - I think definitely Nick, after leading the whole race, deserves this victory."
Frijns said that a "wall of rain" on the run to Turn 6 informed his decision to brake even earlier than the cars in front, which he credits with making it through the corner.
He explained that poor visibility, particularly from the spray emanating from the cars in front, and aquaplaning on the straight meant that he was lucky to make the corner.
"When we were heading to Turn 6 we basically saw a wall of rain, and I think everybody braked early," Frijns explained.
"But as soon as Lucas in front of me drove into that rain wall, let's say, I didn't see anything anymore because of the spray that was coming out of his car.
"So I braked earlier, I felt like really early and soon as the spray was getting away it was actually because Lucas was in a 90 degrees angle so he didn't actually make any spray!
"I also was aquaplaning, my car was swerving quite heavily - but I got it in a straight line and I was basically lucky to hit the apex."