I agree, in sand, a danforth style anchor should work the best.
The biggest mistake people make when anchoring is not using enough scope on the rode. Scope is the ratio of line (the rode) to the depth of the water plus the freeboard or height off the water. At a minimum you should have a 5:1 scope. If you are in an area with a lot of current or wind you should use 7:1.
The scope is calculated by measuring the depth of the water added to the height off the water to where the anchor line is attached to the boat. For instance, if you are anchoring in 4' of water and the point the anchor line is attached to the boat is 2' off the water, then you have 6'. To get a 5:1 scope, you would need to let out 30' of line from where you tie the line to the boat to the anchor. For 7:1 you would need 42' of rode.
Anchors need enough rode (line) let out so that the anchor lays flat on the bottom. It also helps to have 3' of chain between the anchor line and the anchor. This helps the anchor lay flat and also stops the sand from chaffing the line.
For my 14' Sportster, I carry 100' of 1/2" anchor line with 3' of chain attached to a 5lb Danforth Hi-Tensile. Of course, I am usually anchoring in the ocean and have to contend with wave action as well as wind and current. You probably do not need anything near this. A 5lb standard Danforth with 3' of chain and 50-60' of 3/8" line would be more than enough for the average river. In a lake even less is needed.
To retrieve the anchor, take in the line while moving the boat toward the anchor. Once the boat is directly over the anchor, just lift the anchor straight up. If you set the anchor correctly, you should not be able to pull the anchor up until you are not directly above it.