I blame the country, the United States, rather than McNamara. Despite protests, the leadership of the country let the war go on. I think from some of the obituaries I read, more GIs died in Vietnam after McNamara left as Secretary than during his tenure. The NYT obit says "Half a million American soldiers went to war on his watch. More than 16,000 died; 42,000 more would fall in the seven years to come."
As long as the rich and connected -- Bush, Cheney, Clinton, Wall Street types -- could avoid fighting, they were content to let the war go on, but in order to cover their cowardice they reviled those who fought the war, whether McNamara in the Pentagon, or some poor private just out of high school. The criticism heaped on McNamara in his obituaries taints every soldier who fought in the war. I'd like to know more about how the Germans treated their low ranking veterans of World War II. Did the German soldiers experience more shame and hatred from their fellow citizens than Vietnam veterans did?