A central facet of Sage is that it supports computation with objects in many different computer algebra systems ``under one roof'' using a common interface and clean programming language.
The console and interact methods of an interface do very different things. For example, using GAP as an example:
gap.console(): You are completely using another
program, e.g., GAP/Magma/GP
Here Sage is serving as nothing more than a convenient
program launcher, similar to the Linux bash shell.
gap.interact(): This is a convenient way to interact
with a running
GAP instance that may be ``full of'' Sage objects. You can
import Sage objects into this GAP session (even from the interactive
interface), etc.