Windows.
Es kommt ja wohl erstmal darauf an, was du damit vorhast. Software-Entwicklung ist ein breitgefächertes Feld. Was willst du konkret machen? Wenn du bspw. für Windows Programme schreiben willst, ist keines der beiden geeignet. Wenn du für Solaris Programme schreiben willst, nimm Solaris, wenn du für *BSD Programme schreiben willst, nimm *BSD. IMHO (und zwar wirklich IMHO, um allen Flames zuvorzukommen) ist Solaris nicht ganz so gut für den Desktop-Einsatz auf x86 Hardware geeignet, wobei sich das mit Solaris geändert haben könnte. Daher würde ich unter den zwei genannten Möglichkeiten zu (Free-) BSD tendieren, allein auch schon wegen der Lizenz.