I didn't know that this forum is that old till I saw the date of this question :D, however here is an answer that might help the later reader.
I will discuss the difference from the linguistic side, not the fiqh or the ahkam that using any of the two will lead to
before we discuss the difference, you might find it helpful if you take a look at the meaning of ن ه ى and ح ر م in the Arabic-Arabic dictionary for more examples on the words you can build from the 2 roots.
without digging deep to some areas of the language that I don't know much about , specially that using the 2 words has been changed a Little bit between the old Arabic فصحى and the current, I will focus on the main difference between the 2 words and how do you use them inside sentences in fosha فصحى.
as for the word-to-word translation it might be something like this
| 1- حَرَّمَ | verb |= forbid |
| 2- نَهَى | verb |=~ said don't |
is the exact translation of forbid.
when used in sentences it needs only one more "thing" to complete a meaningful sentence , that is "the forbidden thing".
1- حَرَّمَ الله الخمر - Allah has forbidden Alcohol.
2- حَرَّمَ الدم - has forbidden the blood , (although this sentence missed the subject who did the action, it has a complete meaning of the verb(forbidding))
3- حَرَّمَ أبي لعب الكرة ليلا - my father has forbidden playing with the ball at night
So when you see the word حَرَّمَ in a sentence you must expect "a thing" that will be forbidden near
نهى is more like , when you say "don't".
it needs in the most cases one more little word to complete only "the verb" and to be equal to it's brother حَرَّمَ. that word will mostly 99.9% be (عن - about - An)
عن الخمر - Allah has
نهى عن الدم - has
forbidden the blood , (although this sentence missed the subject who did the action, it has a complete meaning of the verb(forbidding))
عن لعب الكرة ليلا - my father has
forbidden playing with the ball at night
NOTE: you can use the word نَهَى without عن but in this case you don't expect to find the "forbidden thing" , but you expect "someone" who has been forbidden from doing something, like in 96:9
so, as a quick points to conclude the general ways of using both the word in Fosha :
حَرَّمَ = نَهَى عن = forbid
(حَرَّمَ/نَهَى عن /forbid)
>>>>need to complete the meaning>>>> "something"- the forbidden thing (e.g نَهَى عن الخمر)
>>>> need to complete the meaning >>>> "someone" - who has been forbidden from doing the forbidden thing (e.g نَهَى شارب الخمر)
I believe the best way to get the difference between the 2 words is by practicing more examples of how حَرَّمَ and نَهَى have been used in Quran.
please note that the usage of both words has been changed a little in the modern Arabic