I would start by learning OpenGL.
See the OpenGL Code Resources
for examples on how to do many common OpenGL tasks.
Note that there is a disclaimer that the samples have code that isn't supported in 3.1. Don't worry about that for now.
I would start with getting 3D lines to intertwine like they are wires, to get your core geometry started. Don't have them touching, but have them separated by the diameter of your desired wires.
Then use those lines to define the segments of connecting mesh cylinders.
Sounds like fun!