Küng was the only rider on the day to clock a time of less than 40 minutes over the 34.1km course, with the Swiss time trial champion finishing 19 seconds ahead of second place Søren Kragh Andersen (Sunweb).
In the overall, Nairo Quintana (Movistar) was unable to make any gains on the 17 second gap to race leader Richie Porte, losing 55 seconds to the Australian on the day and dropping down to third overall.
Jakob Fuglsang (Astana) made the biggest gains on the day, jumping from sixth on GC to second after a strong ride to finish eighth on the stage.
How it happened
After eight tough stages this week in the final WorldTour stage race before the Tour de France, the riders of the Tour de Suisse faced one last test with a fairly flat 34.1km time trial.
With a stage win up for grabs for the time trial specialists and potential movement in for the GC riders in the top-10, there was a lot to play for on the final day.
Maciej Bodnar (Bora-Hansgrohe) set the early benchmark for the day, powering along the course to a decent time of 40-10.
The Pole's time stood for some time until stage six winner Kragh Andersen powered to a time of 40-03, and it looked like the young Dane could be in with a chance of taking a second victory at the race.
Out on course however, two BMC riders in Tejay van Garderen and Stefan Küng looked like they could be in with a chance of setting the new best time.
Van Garderen came close, setting a time of 40-07 after fading slightly in the latter part of the course. Küng however, continued to look faster and faster as his effort went on, and he was able to cross the line with the first sub-40 minute time of 39-45.
That put the Swiss time trial champion in the hot seat with just the GC contenders to come and potentially usurp him.
None really came close though. Jakob Fuglsang performed the best of the riders in the top-10, finishing with a time 40-22 and moving into -- overall.
That move in overall for Fuglsang was in part thanks to Quintana, just 17 seconds down on Porte at the start of the day, third place Wilco Kelderman (Sunweb) and fifth place Sam Oomen (Sunweb), who all failed to put in a performance to potentially worry anyone above them.
Enric Mas (Quick-Step), was able to hold onto his fourth place overall after a solid ride, but saw Fuglsang move above him thanks to his strong ride.
Mikel Landa (Movistar), who rode well alongside Quintana during the mountain stages of the race, put in a dismal time trial effort to lose around 2-30 and drop to 16th overall.
Porte was the last rider to come in with a 40-48; enough to comfortably hold on to the overall and also confirm his team-mate Küng as winner of the final time trial.
Tour de Suisse 2018, stage nine: Bellinzona - Bellinzona (34.1km)
1 Stefan Küng (Swi) BMC Racing Team, in 39-44
2 Søren Kragh Andersen (Den) Team Sunweb, at 19s
3 Tejay Van Garderen (USA) BMC Racing Team, at 23s
4 Maciej Bodnar (Pol) Bora - Hansgrohe, at 26s
5 Michael Matthews (Aus) Team Sunweb, at 26s
6 Pavel Sivakov (Rus) Team Sky, at 37s
7 Cameron Meyer (Aus) Mitchelton - Scott, same time
8 Jakob Fuglsang (Den) Astana Pro Team, at 38s
9 Nikias Arndt (Ger) Team Sunweb, at 44s
10 Nelson Oliveira (Por) Movistar Team, at 46s
Final general classification
1 Richie Porte (Aus) BMC Racing Team, in 29-28-05
2 Jakob Fuglsang (Den) Astana Pro Team, at 1-02
3 Nairo Alexander Quintana Rojas (Col) Movistar Team, at 1:12
4 Enric Mas Nicolau (Esp) Quick Step Floors, at 1-20
5 Wilco Kelderman (Ned) Team Sunweb, at 1-21
6 Simon Špilak (Slo) Team Katusha - Alpecin, at 1-47
7 Sam Oomen (Ned) Team Sunweb, at 1-52
8 Steven Kruijswijk (Ned) Team LottoNL - Jumbo, at 1-59
9 Diego Ulissi (Ita) UAE Team Emirates, at 2-27
10 Arthur Vichot (Fra) Groupama - FDJ, at 2-41
Thank you for reading 5 articles this month* Join now for unlimited access
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Join now for unlimited access
Try first month for just £1 / $1 / €1