This work studies time-slotted communication over molecular timing (MT) channels. The transmitter, assumed to be perfectly synchronized in time with the receiver, releases a single information particle in each time slot, where the information is encoded in the time of release. The receiver decodes the transmitted information based on the random time of arrivals of the information particles during a finite-time reception window. The maximum-likelihood (ML) detector is derived and shown to have an exponential computational complexity, thus, rendering it impractical. In addition, two practical detectors are presented: The first is a symbol-by-symbol detector. The second is a sequence detector which is based on the Viterbi algorithm (VA), yet, the VA is used differently than in its common application in ML detection where information is transmitted over linear channels with memory. Numerical simulations indicate that the proposed sequence detection algorithm significantly improves the performance compared to the symbol-by-symbol detector. Furthermore, for a short number of transmitted symbols it closely approaches the highly complicated ML detector.