You need to create a semi-transparent object representing darker area and a fuzzy-edged "hole" in the center of it pictured as a highly-transparent area. Call it a "mask" object. It should be at least two times the size of your biggest canvas in both directions. Place this object on the canvas in a Z-order to be on top of all other objects. Animate the position of this mask object. Unused part of the mask object will be clipped off by the bound of your canvas, and the "hole" area will be perceived as a cast of a flashlight.
Play with the color and balance transparencies of the mask object to achieve realistic effect.
[EDIT]
For a simple mask object you can use just a bitmap (using, say, PNG with transparency). A vector mask object would be more convenient (scaling, etc.). You can draw it with Inkscape vector editor:
http://en.wikipedia.org/wiki/Inkspace[
^], highly recommended). The vector format is SVG (
http://en.wikipedia.org/wiki/Scalable_Vector_Graphics[
^]), use conversion to XAML using Inkscape (do not use features not supported by XAML such as fuzziness; a fuzzy transparency is different: it can be done through gradient in alpha channel).
—SA