As far as I know, both words mean the same thing in English — “start”. Is there any difference in the meaning or in the usage of the two verbs?
Démarrer implies some initial impulse or effort. Etymologically it comes from désamarrer (i.e. “undock” a boat, which is not necessarily a trivial matter). An extended figurative use slowly emerged, competing with the use of commencer in the beginning of the 20th century, but commencer is still far more common.
One can often substitute one for the other, but a slight nuance exists. In the following sentence:
Il a démarré sa carrière à la télévision.
the TV appears more relevant to the development of this person's career than in:
Il a commencé sa carrière à la télévision.
Dans un registre familier, ils sont PRESQUE interchangeables (on évitera par exemple de dire "commencer le moteur").
Il n'y a malheureusement pas de règles précises.
As in so many cases in French, there's no specific rule but if you're French, you know, if you're not French, you'll never know. They learn it through osmosis I think. The best I can get is demarrer implies some effort whereas commence is something which just kind of happens. So starting cars, chainsaws, conversation tends to be demarrer but if you look over your shoulder and see something has already started, it's commencer. Best I can do but no one is going to roast you for mixing them up.