DSL speeds mainly depend on your line quality & distance from your telco central office. Lots of other little variables go with it, all the way down to the quality of the wires in your phone jacks. I lived the nightmare of tech supporting it when it first rolled out.
Cable is similar, distance, line quality, and dozens of other little variables, up to and including how many splitters you have in your house.
Basically, you want whatever is best for your location. One is not superior to the other in every instance. At my house, I get 8mb down / 3 up on my cable line. My neighbor is lucky to pull 3mb on his DSL line. In my parents neighborhood, the cable is horrible. At best it was pulling 3mb down, while DSL, being so close to their central office, pulls absolutely ridiculous speeds.
And Skuzzy is dead on with the pings. For those that don't already know, if you want to see where exactly you're connection to whatever is getting latency at, or dropping packets, use "tracert " or "traceroute " depending on what OS you're running. That will tell you where your data has to route through to get where it's going. You may be sitting right next to a Cisco Catalyst switch, with a gigabit port, hooked to an oc192 link... but if the route your're on is having problems, you're still going to have crappy pings.