GraphicsDevice.Textures are your "traditional" textures; the one's you sample from during the fragment shader.
GraphicsDevice.VertexTextures are textures that you want to sample from in the vertex shader, which required specialized HLSL instructions (
texldl, as noted in the documentation) on the D3D9-class hardware that XNA is based on. Vertex textures were a half-measure towards the more unified shader resource input pipe that is available on modern cards, but not via XNA. You probably do not need to concern yourself with the
VertexTextures property for the time being.
Effect API to send textures to the shader will, under the hood, do exactly the same set of steps that you would need to do if you manually assigned textures to specific samplers. I would recommend you continue to just use the
Effect methods as they are likely going to be easier for you, since you already understand them.