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()
: This opens the GAP console - it
transfers control to GAP.
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.