Van Baarle beat Jack Haig (Mitchelton-Scott) after the two had attacked in the closing kilometres of the race, the Dutchman taking his first ever win from a sprint.
This meant Ineos had two wins in two days after Wout Poels won on stage seven, the British team able to leave with the slimmest of silver linings after Chris Froome crashed out earlier in the week.
Fuglsang successfully defended his lead in the overall classification, after taking yellow on stage seven, beating Tejay van Garderen (EF Education First) by 20 seconds. Van Garderen climbed up to the second step of the podium after Adam Yates (Mitchelton-Scott) abandoned the race with less than 50km to go, the Brit suffering from an upset stomach. He had been sitting in second place on GC before the start of the stage, eight seconds behind Fuglsang.
Emanuel Buchmann (Bora-Hansgrohe) completed the podium in third one second behind Van Garderen, with Wout Poels (Ineos) just missing out, 28 seconds down on Fuglsang after his heroics on stage seven.
Wout Van Aert (Jumbo-Visma) won the sprinters classification ahead of his debut Tour de France, with Julian Alaphilippe claiming the king of the mountains classification after a week spent entertaining fans and animating the race.
How it happened
The final stage eight of the 2019 Critérium du Dauphiné featured seven categorised climbs before an uphill finish to Champéry.
Twelve riders went up the road after 20km, induced by a crash in the peloton. The break included Dylan van Baarle (Ineos), Jack Haig (Mitchelton-Scott), Julian Alaphilippe (Deceuninck – Quick-Step), Alessandro De Marchi (CCC) and Warren Barguil (Arkéa-Samsic).
Alaphilippe was once again the first to a categorised summit, mathematically clinching the blue polka dot jersey over the Côte de Rond.
With just under 50km to go, Adam Yates (Mitchelton-Scott) abandoned the race, suffering from an upset stomach, with the Brit telling the other Mitchelton-Scott riders to carry on as he stopped by the side of the road.
The break had an advantage of 4-10 with 40km remaining, but this was reduced to the two-minute mark with 20km to go.
Sensing their day out front could be over sooner rather than later, Sepp Kuss (Jumbo-Visma) attacked from the breakaway with 17km to go, with Jack Haig (Mitchelton-Scott) following his wheel before Dylan van Baarle (Ineos) bridged across a kilometre later.
Steven Kruijswijk (Jumbo-Visma) was the next to abandon, before Haig attacked the trio of leaders, with a gap of 1-48 over the peloton.
Alaphilippe attacked once more from the remnants of the breakaway with 15km to go, attempting to get across to the front of the race, as Van Baarle caught back up to Haig.
With 14km to go, Haig and Van Baarle had 1-55 over the peloton, with Alaphilippe only 25 seconds behind.
Alaphilippe had not managed to reduce the gap any further with 10km left, and finally ran out of gas after a Dauphiné spent hoovering up king of the mountains points and animating the race with 5.5km to go. This left Haig and Van Baarle to battle it out for the stage win.
Behind, the peloton had been fairly sedate, with Fuglsang looking solid as he rode to the overall victory.
Van Baarle looked comfortable as he beat Haig in the sprint, with the GC group coming across the line together behind them, meaning Fuglsang secured his second victory in the race after winning in 2017.
Critérium du Dauphiné 2019, stage eight: Cluses to Champéry (113.5km)
1. Dylan van Baarle (Ned) Ineos, in 3-05-48
2. Jack Haig (Aus) Mitchelton-Scott, at same time
3. Carl Frederik Hagen (Nor) Lotto-Soudal, in 50s
4. Warren Barguil (Fra) Arkéa-Samsic, in 1-12
5. Sepp Kuss (USA) Jumbo-Visma
6. Sébastien Reichenbach (Sui) Groupama-FDJ, both at same time
7. Julian Alaphilippe (Fra) Deceuninck – Quick-Step, at 1-16
8. Alexey Lutsenko (Kaz) Astana, at 1-59
9. Xandro Meurisse (Bel) Wanty-Gobert
10. Emanuel Buchmann (Ger) Bora-Hansgrohe, both at same time
Final general classification
1. Jakob Fuglsang (Den) Astana, in 30-44-27
2. Tejay van Garderen (USA) EF Education First at 20s
3. Emanuel Buchmann (Ger) Bora-Hansgrohe at 21s
4. Wout Poels (Ned) Team Ineos, at 28s
5. Thibaut Pinot (Fra) Groupama-FDJ at 33s
6. Dylan Teuns (Bel) Bahrain-Merida at 32s
7. Alexey Lutsenko (Kaz) Astana Pro Team at 1-12
8. Dan Martin (Irl) UAE Team Emirates, at 1-21
9. Nairo Quintana (Col) Movistar, at 1-24
10. Romain Bardet (Fra) Ag2r La Mondiale, at 1-38
Final points classification
1. Wout van Aert (Bel) Jumbo-Visma, 82 pts
2. Edvald Boasson Hagen (Nor) Dimension Data, 53 pts
3. Julian Alaphilippe (Fra) Deceuninck – Quick-Step, 49 pts
Final climber classification
1. Julian Alaphilippe (Fra) Deceuninck – Quick-Step, 75 pts
2. Magnus Cort (Den) Astana, 25 pts
3. Wout Poels (Ned) Ineos, 15 pts
Final youth classification
1. Bjorg Lambrecht (Bel) Lotto-Soudal, in 30-47-44
2. Neilson Powless (USA) Jumbo-Visma, at 11-42
3. Sepp Kuss (USA) Jumbo-Visma, at 16-02
Final team classification
1. Astana (Kaz), in 92-19-24
2. Team Ineos (GBr), at 12-58
3. Groupama-FDJ (Fra), at 13-22