Which sentence uses the correct punctuation?

A. Congratulations! You won the first prize.
B. Congratulations, you won the first prize!
C. Congratulations! you won the first prize!
D. Congratulations! You won the first prize!

Please explain why.