Two goals from Alain Traore put the visitors in the driving seat but that was tempered by red cards for Maxine Baca and goalkeeper Fabien Audard.
Rennes replied through Jonathan Pitroipa but they also finished the match a man down with Cheick Diarra given his marching orders.
The drama began as early as the fourth minute when Victor Hugo Montana was denied an opening goal for Rennes after his low strike came back off the left post.
Lorient capitalised on the miss by taking the lead after 23 minutes. Lucas Mareque picked out Traore in a central position and the Burkina Faso striker was accurate with his left-footed shot.
Their joy had lasted nine minutes before Baca became the first player to see red for a two-footed challenge on Pitroipa.
However, they defied their man deficit to go two-up a minute before the interval thanks to a sublime 30-yard free-kick from Traore, which nestled in the top right corner.
Lorient were hit by another bout of indiscipline after 54 minutes when Pitroipa was again brought crashing to the ground, this time by Audard who had few arguments with the subsequent red card.
Rennes saw this as their opportunity to hit back and after Sadio Diallo came close with a free-kick, the home side were on the scoresheet after 71 minutes.
A poor touch from defender Wesley Lautoa gifted the ball to Pitroipa, who slammed a shot high into the net.
The game appeared set for an exciting finish, but the sting was taken out of things with another red card 12 minutes from the whistle - this time for substitute Diarra, who was sent back to the dressing room just 10 minutes after coming off the bench for a reckless lunge at Traore.
The Lorient striker then almost capped a fine individual display with a hat-trick but his late drive from distance was tipped over the bar by home goalkeeper Benoit Costil.