It's been a couple of years since I flew from Shanghai to Beijing, so I don't remember fares, but using a local travel agent will definitely be your easiest option. We flew Shanghai Airlines, which I believe was slightly cheaper than Air China. The flight itself is not that long but the crew were very efficient and there was some sort of meal service (the meal itself, however, was rather unusual looking and I was not brave enough to eat it!). The experience of an intra-China flight itself was the best part for me, and I enjoyed the experience. You probably already know this, but from downtown Shanghai, the Hongqiao airport is much closer than Pudong, although Pudong is much more modern and less chaotic. Safe and pleasant travels.