1
Two Threads, One Core: How Simultaneous Multithreading Works Under the Hood
(blog.codingconfessions.com)
This is a most excellent place for technology news and articles.
The way shorter, simpler version is that there are a bunch of distinct parts of the CPU, and a single thread generally isn't structured in a way that can use all of those parts at once. By having two threads "at once", you can fill in the gaps where parts aren't used more efficiently.
This is also why the value of SMT varies based on workloads. Some code just isn't structured in a way that adding the extra thread helps.