Niskanen looked set to pass Norway's Emil Iversen on the final bend in Sunday's race but he had to content himself with a bronze medal after the two crashed, allowing Russia and Italy to nip in and take gold and silver respectively.
On Wednesday the 25-year-old made no mistake, setting a swift pace early on and never relenting, eventually winning by a margin of 17.9 seconds ahead of Norway's Martin Johnsrud Sundby and 31.3 ahead of Niklas Dyrhaug.
Defending champion Johan Olsson of Sweden could only manage ninth place after falling out of contention early.
News that makes sense
Your trusted source for staying up-to-date with the world around you. Get free daily news updates and analysis, straight to your inbox.
(Reporting by Philip O'Connor in Stockholm; Editing by Alison Williams)
