Quote:So basicly I am not forced to create a 3D object with directx, right ?
That sounds a bit strange since DirectX is not / does not contain a modeling toolkit. But I think you got it partially right.
As said, DirectX and OpenGL are only interfaces. You tell DirectX/OpenGL in your code what polygons to draw and it passes this information on to the graphics card.
Where your code takes these polygons from is up to you. Usually, you read them from a file that was generated by 3dsmax, maya or milkshape. But you could as well produce those polygons in your code (eg. a terrain renderer usually does this).
Whether you learn DirectX or OpenGL first is entirely up to you.
For game programming, Windows is certainly the preferred environment. The vast majority of game developers use windows, thus, it's easier to get help, most tutorials you'll find are tailored to the Windows environment and you're sure to find drivers for your graphics card that support 3D acceleration on windows while it *may* become hard to finding suitable on linux.
-Markus-