Provided you have some rudimentary programming skills already ...
Introduction to 3D Game Programming with DirectX 9.0
Introduction to 3D Game Engine Design Using DirectX 9 and C#
Beginning DirectX 9 (Game Development Series)
Most have DX 10 versions in print now and as there is increasingly a lack of backwards compatibility you should start learinng the more recent iterations.