Geoserver and Mapserver are both quite powerful but their developers pursued different goals.
To make the choice easier for you (I hope), here comes a general feature comparison:
| Geoserver | Mapserver | |
| WMS | both are good | maybe a bit better [1] |
| WFS | better, supports WFS-T [1] | no WFS-T [1] |
| Technology | J2EE [1] | CGI [1] |
| Project start | 2003 [1] | 1996 [1] |
| Administration | Web tool | Mapfile generation can be aided by QGIS, but not comparable to Geoserver’s web admin tool |
| Extensibility | good for Java developers [1] | PHP Mapscript, good for PHP developers [1] |
| Cartography | uses standardized SLDs | powerful; styles are part of mapfile |
| Services | one WMS/WFS/WCS service for all users [1] | a mapfile means a service [1] |
| Querying | CQL and OGC filters | embedded SQL statements |
New benchmarking results should be available soon [2]. Meanwhile, you might wanna watch last years results [3].
[1] http://osgeo-org.1803224.n2.nabble.com/Mapserver-vs-Geoserver-td4905798.html
[2] http://wiki.osgeo.org/wiki/Benchmarking_2010
[3] http://www.slideshare.net/gatewaygeomatics.com/wms-performance-shootout