First of all, please note that there are many different kinds of Congressional staff. When we hear the phrase “Congressional staff” we generally think of the people who work directly for a member of Congress. But in your explanation, you make reference to support agency staff. They have a very different role.
If we are looking only at support agencies like the Congressional Budget Office and the General Accounting office, the role of staff is to serve as experts on various issues. The issues that face Congress can be very complex. It can be very difficult to understand any one issue, let alone all of them. Therefore, staff is needed to collect and digest information for members of Congress. This is generally what the CBO and GAO do. They serve to collect information that Congress wants about the budget and about the general workings of the government. Congressional committees also have staff that perform similar functions, only with respect to the public policy areas those committees are involved in.
Members of Congress also have personal staff. These staff, however, play a much different role. Some may be experts in certain areas of policy. However, many of them are more involved with things like doing casework for the members’ constituencies and managing the members’ daily routines.