Your best bet would probably be to use Body.ApplyForce on every body within the radius of the explosion in the direction opposite it - most likely with some sort of falloff over the distance from the center of the explosion. That would look something like
foreach (Body body in myGameWorld.GetGameObjectsInRadius(explosion.Position, explosion.Radius))
Vector2 vectorFromExplosion = body.Position - explosion.Position;
// Note that here we're using a linear falloff. If you want the explosion force on this body to fall off more sharply with distance, you can use vectorFromExplosion.LengthSquared() instead.
float explosionForce = (explosion.Radius - vectorFromExplosion.Length()) * explosion.Force;
Vector2 forceOnBody = Vector2.Normalize(vectorFromExplosion);
forceOnBody *= explosionForce;
As for animating the explosion, I'd suggest using an explosion generator like
Explogen (try the first download link, for some reason the second one didn't work on my computer). A slightly less user-friendly alternative is
Positech's Explosion Generator.