As the name implies, a watchdog timer essentially ensures the embedded system does not perpetually remain in state of software or hardware fault.
It accomplishes this task by requiring it be serviced/reset periodically, before its timer expires, otherwise known as "kicking the dog."
If the watchdog timer does expire, the entire system is then reset, which in turn, at least momentarily, removes the system from the state of software or hardware fault.
On the other hand, a standard hardware timer is typically employed to accomplish a myriad of other system tasks.
It too can be loaded with a predetermined value which when incremented by a predetermined clock source, eventual rolls over to zero, raising a flag.
The flag can in turn be polled or configured to trigger an interrupt which in turn can run an interrupt service routine (ISR) to perform a specific periodic task.
A standard hardware timer can often be utilized to count the occurrence of a specific event or record the duration of time between the occurrence of events.
There are other features/modules which utilize a standard hardware timer and these vary widely from one microcontroller to another, therefore you will need to examine the datasheet of the microcontroller you are considering incorporating into your design.
BigDog