Many fine books have been written and published on the subject of OO software development by a variety of publishers, and it would be virtually impossible to do justice to them all here. Consider this list to represent some of our personal recommendations (visit Jacquie's web site, http://objectstart.com, for more recommendations), but please do browse the titles available from your favorite technical bookseller, as new titles are being released literally every day.
Booch, Grady, James Rumbaugh, and Ivar Jacobson, The Unified Modeling Language User Guide, Addison-Wesley, 1998.
A definitive reference on UML, written by its creators; definitely worth adding to your library if you're serious about object modeling.
A second definitive reference by the same gentlemen; see our comments for the preceding title.
Jacobson, Ivar, Grady Booch, and James Rumbaugh, Unified Software Development Process, Addison-Wesley, 1999.
And a third!
Quatrani, Terry, Visual Modeling with Rational Rose and UML, Addison-Wesley, 1998.
A practical, step-by-step guide for how to use Rational Rose, one of the industry's leading object modeling CASE tools, to prepare UML models.
Eriksson, Hans and Magnus Penker, UML Toolkit, John Wiley & Sons, Inc., 1998.
Comes with a CD-ROM containing a demo copy of Rational Rose, numerous UML models, and code.
Taylor, David A., Object Technology: A Manager's Guide, Addison-Wesley, 1998.
A classic, high-level review of the direction in which the OO industry as a whole is headed.
Gamma, Erich, Richard Helm, Ralph Johnson, and John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1994.
An in-depth look at identifying and reusing common design patterns.
Meyer, Bertrand, Object-Oriented Software Construction, Prentice Hall, 1988.
An academic treatment of object-oriented principles, based on the Eiffel programming language.
Kernighan, Brian W. and Dennis M. Ritchie, The C Programming Language, Prentice Hall, 1988.
A solid, classic treatment of C, for those of you who are interested in the most basic of C#'s "roots"!
A comprehensive reference for the C# language, designed for experienced programmers.
Palmer, Grant, C# Programmer's Reference, Wrox Press, 2002.
A handy quick reference guide to the C# language.
Troelson, Andrew, C# and the .NET Platform, Apress, 2003.
Provides a brief introduction to the C# language and then moves to a discussion of key technical and architectural issues for .NET developers.
MacDonald, Matthew, User Interfaces in C#: Windows Forms and Custom Controls, Apress, 2002.
Covers the Windows Forms namespaces as well as a detailed discussion of good user-interface design principles.
(Coming soon!) Barker, Jacquie, Taming the Technology Tidalwave, ObjectStart Press, 2004.
A light-hearted career guide for technical professionals; please visit http://objectstart.com for details on this upcoming book.