For textures, I recommend Paint.NET. Simple to use, lots of tutorials out there, and it's free.
For creation of segments from those textures, I use Signs. I got this YEARS ago from one of the members here, and it has been invaluable in creating those custom wall segments and entities that I need (especially an invisible wall entity).
For modeling, Blender is a good choice. It's free, and has a dedicated user community for it. I have only attempted small things, and nothing has been exported for use in FPSC. But, I have it and play around with it (and after my test project in FPSC I will go further in-depth to create custom entities and objects).
Priest of the Church of Joe Wood
In memory of Nanee. 9/1/1993 - 5/16/2009. Rest in Peace, little girl.