It was the Swiss star third Grand Slam title and his 15th trophy on the tour.
The 31-year-old Swiss, seeded three in New York had defeated Djokovic on his way to winning the 2014 Australian Open and 2015 French Open,
He did it again in New York Sunday night, denying the world number one a third grand slam title this year following his wins in Australia and France.
Wawrinka showed early he meant business, when he clawed back from 3-5 down in the first set to force a tie breaker, which Djokovic won. The Swiss man however played superlative tennis to take the remaining three sets.
The 31-year-old hit 46 winners in a brilliant display of shot-making.
Djokovic struggled physically in the final set and took a medical time out twice, when Wawrinka was leading 3-1 and 5-2. But the world number one found the Swiss a better player on Sunday night.
Wawrinka has now won 11 finals in a row, including all three Grand Slam finals he has appeared in.
“My goal is to give everything I have to be the best I can,” he said.
“I never had a goal to win a Grand Slam but I am trying as best I can. Match after match I was playing better.”
Djokovic said: “Congratulations, Stan, to your team as well. This has been absolutely deserved today. You were more courageous player in the decisive moment and he deserves his title.”