Honestly, I think the best way for the government to shut down Bitcoin would be as a secret project. Simply construct a VLSI ASIC miner built using 40nm/1Gtransistor technology and build 100,000 of them. Effectively make them appear distributed around the world using VPNs, the bandwidth is low. Then execute frequent 51% attacks on the Bitcoin chain to "unconfirm" transactions to major sites. Confidence in the Bitcoin system would drop to nothing.
Another trick would be to switch the miners off and on unpredictably. If done right, this could lead to hours between confirmations at some times.
One can imagine the community responding to this in a coordinated way to develop a workaround. But if you assume subversion and interference in that process, such a response could be avoided.
Of course, they could also summarily execute anyone found using Bitcoins. It's effective too, but also pretty unlikely.