The South Vietnamese Government should have done more to help with the war effort. It was their country, their civil war, and ultimately responsibility for defending it must fall on their shoulders.
The Northern Vietnamese communists employed highly effective military strategies to defeat the US and South Vietnamese.
The communists didn't win the war, the US lost it due to extensive flaws within its war strategy.
The US government’s bombing campaign across Northern Vietnam was tightly controlled and never given the freedom to strike targets that would cripple communist supply lines.
The US conduct in Vietnam turned the local population against them, driving many into joining the communists.