Both were aiming for the same effect. The systematic starvation of the russian/german people. Why is one a warcrime, and the other a legit tactic to defeat your enemy?
They weren't aiming for the same effect. In WW1, the enemy was the german military, and in order to make them buckle, they starved germany.
The siege of Leningrad wasn't just a blockade - it also included firing artillery into the city - and not at just the military targets.
The transcripts from the Nürnberg trials have plenty of details, if you know where to look:
(b) Murders and ill-treatments at places in the Eastern Countries and in the Soviet Union, other than in the camps referred to in (a) above, included), on various dates during the occupation by the German Armed Forces:
In the Leningrad region there were shot and tortured over 172,000 persons, including over 20,000 persons who were killed in the city of Leningrad by the barbarous artillery barrage and the bombings.
On the territory of the Soviet Union the Nazi conspirators destroyed or severely damaged 1,710 cities and more than 70,000 villages and hamlets, more than 6,000,000 buildings and made homeless about 25,000,000 persons.
Among the cities which suffered most destruction are Stalingrad, Sevastopol, Kiev, Minsk, Odessa, Smolensk, Novgorod, Pskov, Orel, Kharkov, Voronexh, Rostov-on-Don, Stalino, and Leningrad.
As is evident from an official memorandum of the German command, the Nazi conspirators planned the complete annihilation of entire Soviet cities.
In a completely secret order of the Chief of the Naval Staff (Staff Ia No; 1501/41, dated 29. IX. 1941) addressed only to Staff officers, it was said:
"The Fuehrer has decided to erase from the face of the earth St Petersburg. The existence of this large city will have no further interest after Soviet Russia is destroyed. Finland has also said that the existence of this city on her new border is not desirable from her point of view. The original request of the Navy \that docks, harbor, etc. necessary for the fleet be preserved—is known to the Supreme Commander of the Military Forces, but the basic principles of carrying out operations against St. Petersburg do not make it possible to satisfy this request.
"It is proposed to approach near to the city and to destroy it with the aid of an artillery barrage from weapons of different calibers and with long air attacks....
"The problem of the life of the population and the provisioning of them is a problem which cannot and must not be decided by us.
"In this war . . . we are not interested in preserving even a part of the population of this large city."
And from another part of the transcript:
On 7 October 1941, Jodl signed an order that Hitler would not accept an offer of surrender of Leningrad or Moscow, but on the contrary he insisted that they be completely destroyed. He says this was done because the Germans were afraid those cities would be mined by the Russians as was Kiev. No surrender was ever offered.
So it's not the siege itself which was a war crime - it was the willfull attacks on civilians.
EDIT: A deleted comment called my attention to something that could have been written better.
It's not the willful attack on civilians - it's trying to kill everyone - not to break the country, but for the sake of making sure everyone is dead.
The V1 bombing of london wasn't a warcrime, simply because England always had the option of surrendering.
And the firebombing of Dresden could have been prevented, if the Germans had surrendered.
If Germany had won WWI the British Blockade likely would have been litigated as a warcrime. If Germany had won WWII then Leningrad wouldn't have been a warcrime, but Dresden would have been. It is in the nature of contemporary wartime politics to magnify the perceived crimes of one's enemy while explaining away those one is accused of.
That being said, there was an established wartime precedent of blockading areas by sea in an effort to besiege and starve those areas. The British had employed this strategy for centuries, so the blockade of "vital war materials" from her enemies was an accepted and acceptable war strategy. The fact that it was aimed at an entire nation state was certainly novel, and the fact that civilians were affected was considered an unfortunate byproduct that was a part of siege warfare going back to the dawn of history.
When the Nazis conceived the Barbarossa campaign, aside from territorial and racial/settlement ambitions, certain Russian cities were designated for total destruction. Leningrad was chief amongst these, so from the outset the German siege was aimed at the destruction of the city - not its capitulation. Artillery barrages aimed at non military targets were common, and the sealing of the lines against civilian refugees (which was not historically uncommon, but not - and hadn't been - common practice for over a century in Europe) as well as the interdiction of foodstuffs over Lake Lagoda specifically intended for civilian relief (though, to be fair, it is likely that Soviet authorities would have diverted these to the troops without batting an eye) was seen as unnecessarily targeting the civilian population rather than focusing on military targets.