Direct Debits and Standing Orders are one of the most basic and common parts of banking, however there is lots of confusion about which one does what and when each one is used.
Effectively they pretty much do the same thing - i.e., they are a way to transfer money from one bank account to another - so for the most part people don't really notice what one is used and they don't really need too. However if you need to amend one of them or something goes wrong, it can be useful to know the difference between the two and know what action you need to take.
A Quick Definition
At a basic level the difference between the two comes down to one thing - who controls the payment.
A Direct Debit is controlled by the company you are paying. They set it up on your bank account and they 'request' the money from your account each time they are due a payment. Your bank does almost nothing else but let them take the money.
A Standing Order however is controlled by you. You instruct your bank to send a set amount of money to a given account on a set schedule. The person/company you send the money to has no control over the payment what so ever.
A Little More Detail
So if they both just move money around between accounts, why the difference?
There are obviously exceptions to this but Direct Debits are mostly used to pay bills and standing orders are used to move money to pay an individual account.
Direct Debits have the advantage of being able to be set up on an almost 'ad-hoc' basis and with a 'variable' payment amount. Often they come out at a similar time each month and often for the same amount, but they can be changed by the company at any time. (It is worth noting that even though they can change the payment amount/schedule, they do have to tell you before they do this). This allows the payment amount to be changed according to the amount owed. A great example of this would be paying off a Credit Card.
If you wanted to set up your Credit Card to be paid off every month, then the Direct Debit payment would change accordingly every month to cover whatever money was owed.
Standing Orders on the other hand are much less flexible, but they do give you the element of control. To set up a Standing Order you just contact your bank and ask them to set it up at the amount and frequency you want. Once it is set up, it will continue to pay the same amount on the same schedule (weekly, monthly, quarterly etc) until you instruct it to stop. Any change that needs to be made will require you to interact with your bank to make the change.
This of course is great if you owe a friend some money, or just want to move some money into a savings account. You just set up a Standing Order that pays the set amount each month and away it goes.
In the example of the paying off your Credit Card bill it might not work. If you wanted to pay off the full amount each month, a Standing Order would be no good. You would be contacting your bank every month to change the amount of the payment. However if you knew you could only afford to pay a set amount each month off your Credit Card, then you could set this up and pay it off more slowly.
Obviously there are some exceptions to when which one can be and is used, but for the majority of the time, this is how it works best and easiest.
So, if you have an issue with a Direct Debit, you are best off contacting the company you are paying first. If it's a Standing Order you need to contact your bank.