This is homework, so we'll give you no code.
But to be honest, this is pretty simple, honest!
Break it down into smaller bets and get those working first.
So start with the most important:
Ask the user for a number, and read it in.
You know how to do that, right? It's just a Console.WriteLine, followed by a Console.ReadLine and a conversion to an integer (And you know how to do that, I'm sure)
Test that: print the number you entered! When it reads numbers fine, (and complains about non-numeric inputs instead of crashing) move on to the next bit:
Continue to read in numbers until he enters zero
You know how to do that as well: a simple loop that checks the number he read and if it's zero exits.
Test it. Test it again.
Next bit:
Display the largest
Slightly more complicated, but not a lot. Add a "max so far" variable and before you enter the loop set it to the smallest possible value - I'll even give you the code for that:
int maxSoFar = int.MinValue;
setting it to the smallest possible value means that whatever the user enters will be bigger!
Inside the loop, check what the user entered against that value. If the new value is bigger, set maxSoFar to the new value.
After the loop, print maxSoFar because it is the biggest entered value!
Test it. Test it with different data. And again, with yet different data.
When you are happy, all done!