Fighting and Ground Pokemon both cover 5 types, and coincidentally, they both are the only types to cove the Pokemon with only one weakness, Electric and Normal. Those types are offensive.
As of typing, you can't really have defense AND offense unless the Pokemon is a tank.
Specific Pokemon who have good defense and offense are usually Rock and/or Steel and/or Ground types, such as Aggron or Rhyperior.
As blobyolo said, Pokemon such as Magnezone are great defenders as well. (Electric/Steel.)
However, most legendary Pokemon cannot go on the offense and defense very well. Diagla has two weaknesses, Fighting and Ground (the two again! Gasp!) so it just goes to show.
Hope this helps you!