Why do we need a infinite loop in embedded systems development? What are the different ways by which you can code in a infinite loop?

The infinite loops are coded in to give a delay or sleep to the program execution for a specific amount of clock ticks. They can be implemented as:
while(;;);
for();
(or)
Loop:
goto Loop;