The Hubble Space Telescope (HST) is an orbiting astronomical observatory, designed to operate as close as possible to ground based instrumentation, given the limitation of operating in a low earth orbit. The spacecraft design had to accommodate an absolute pointing accuracy of 0.01 arc seconds, a relative pointing stability of 0.007 arc seconds rms, the capability to maneuver 90 degrees in 18 minutes, and operate autonomously in a safemode control scheme for up to 72 hours. Furthermore, the design had to provide for a flexible, stored command methodology, and real-time command capability. This paper briefly reviews the spacecraft engineering hardware and software design. A detailed critique of the on-orbit performance of the spacecraft is provided. Enhancements and work-around, which have enabled HST to continue implementation of a successful science plan, are explained.