You don't need photoshop...but you do need a program that allows you to 'layer' an image. The idea being that you create two layers (two copies of the image)...the top one is converted to B&W. Then you just erase the parts of the top layer, that you want the color to show through.
Another method would be to just convert an image to B&W and color in the parts you want...although this is more of an artistic endeavor.