Use go run during development when you're testing changes frequently. Use go build when you need to distribute your program or deploy it to production.
A common workflow: run go run while coding, then go build once you're ready to share or deploy. Some developers always use go build and run the binary directly. Either approach works. Choose what fits your style.