Pros
Reusability - Ok, this one is obvious, reusability of the Orbiter and SRBs freed the System of continuous production (which is the case of for eg. Soyuz). So that cut the costs.
Flexibility - The shuttle was designed according to requirements set by the military. The crucial factor in the size and shape of the Shuttle Orbiter was the requirement that it be able to accommodate the largest planned commercial and military satellites, and have over 1,000 mile cross-range recovery range to meet the requirement for classified USAF missions for a once-around abort from a launch to a polar orbit. The ability that differentiates so much from other spacecraft is the ability to retrieve (bulk) cargo from orbit, for ground repairs or for retrieving experiments. It has been used for deploying, repairing and retrieving satellites and the Hubble, performing experiments in space and docking to and building of a space station and crew rotation.
An engineering feat - It was a symbol of the entire nation and a symbol of it's technological supremacy. It was really sexy I must say.. (I'm not American)
Experience - This is more like a side effect, but in my opinion, it is big (right?). Running the same thing for 30 years made NASA know it better with each flight. Only Soyuz could be given the title of the most "experienced" system
Cons
Too complicated - Apparently, this is the biggest con of the Space Shuttle. It just had too many sub-systems and so too many things could fail, and too many things to check and prepare for next mission. For comparison, the heat shield of a typical pod manned rocket was composed of one single ablative heat shield, while the Shuttle had 7 different TPS systems, each guarding the surface according to how much heat it takes during reentry. Also note that 2 of the highest resisting materials (the glass foam tiles and reinforced carbon-carbon leading edges and nose cone) were very fragile. The complicated system added greatly to risk and cost.
Lack of modernization - or lets call it.. "Ageing". Elon Musk stated that the very reusability of Shuttle prevented from evolving at the same rate as other rockets. There were very few real design changes. And most of those were electronics and the material that the ET is made out of. At one point NASA even searched for components for reparation of it's aged computers that no one else made anymore, on eBay. Thus reusability, the holy grail of spaceflight for so long, ended up ironically stunting its own development.
Limited range - It was designed for LEO and possibly GEO, but not further. Even if you wanted, there is no reason to send a 50 tonne ship (that can carry 20 tonne cargo to LEO) any further.
Understated risk - At the beginning of the program it was assumed that the risk of failure is as low as 1 in 7000 flights, it was only realized, after the Challanger disaster that the risk was greatly understated and the risk assessment gave a possibility of failure of high up as 1 in 9 flights! (by looking into procedures of previous flights). Post Columbia safety improvements cut the failure chance to about 1 in 100, but it gave a huge cost and delays between launches, especially when you look that the Shuttle was predicted to have 50 flights per year (yet it averaged at 4).
Non-reusable ET - The external tank was not reusable and therefore had to be produced for each flight.