The Spatial Analyst at 9.3 has several new capabilities, improvements, and fixes.
This post highlights some of the important changes; for a full description,
see the What's New pdf document (Once open, in the Extensions section click on
Spatial Analyst. This will take you to the right location in the document.)
New Functionality
Zonal Histogram - Helps you to investigate the distribution of cells from
one dataset within classes of another. Example applications include rainfall
within watersheds or crime distribution by police beat.
Contour with Barriers - This tool allows you to get better results when trying
to contour discontinuous surfaces. In addition to its superior handling of
barriers, Contour with Barriers creates smoother contour lines, generate much
larger output datasets (no 2.14 GB shapefile size limit), and optionally to
attribute primary and index contour lines.

The Snap Raster environment has moved from being part of the Extent environment
to being its own separate environment setting. This gives you flexibility to
set the snap raster dynamically from scripting or ModelBuilder.
Usability Improvements
The Con tool now allows the input conditional raster to be a floating point raster.
The Create Constant Raster, Create Normal Raster, Create Random Raster, Extract by Rectangle, and
Topo to Raster
tools now allow you to specify the extent of the output raster to be that of an existing dataset.
The main benefit of this is the extent can be set dynamically from scripting or ModelBuilder.
While you can still enter the extent values manually (but who wants to type in
370803.47263702 3978856.7539477 443868.87614745 4032133.0258861 ?), being able to specify a dataset is
both easier and helps ensure the proper precision is maintained .
All Spatial Analyst tools have new Geoprocessing tool errors and warnings and show execution percent complete using the new progress bar.
Performance and Data Improvements
Combine and Cut/Fill are significantly faster (up to 40 times).
Viewshed now handles much larger inputs (no more MSEEK fatal errors!).
IDW now works with many more points (up to 50 million).
Combine now works on millions of combinations.