Sore throats caused by viral illnesses usually last about three to four days. Sometimes a sore throat may be caused by tonsillitis, where the tonsils at the back of the throat are swollen. Bring your child to the doctor if they have had a sore throat for more than 24 hours, especially if they also have a fever.