Congress has subcommittees for the same reason that it has the larger committees. I would say that there are two main reasons.
First, it is useful to have subcommittees to allow members of Congress to have influence over policy areas in which they have some expertise. It makes sense to have the people who know and care the most about some area of policy be the ones who have the first shot at marking up bills and suggesting what sorts of policies should be implemented.
Second, it is much more efficient to have small groups work on proposed laws. Imagine if every bill that came before Congress had to be marked up on the floor. It would be chaos because of the numbers of people involved. It would also make it very hard to get anything done because there are so many bill proposed. So having various committees and subcommittees allows Congress to take care of more business more quickly.