The original Mac OS version of the game and its manual are available to download for free at http://trilogyrelease.bungie.org/. Individual files can also be downloaded as opposed to the full game. The game has also been modified to no longer require serial keys to install.
Note that they are provided as is and will only run on a classic Macintosh.
It is recommended to use the Aleph One version as it adds support for modern systems and bug fixes.
Aleph One is an open source continuation of the Marathon 2 engine. It makes the game more modern and accessible with many different improvements such as cross-platform support, widescreen resolutions, and improved multiplayer networking.
For Windows and OS X, everything is provided as a single app/folder. For Linux, the engine need to be downloaded separately from the game files, compiled, and merged in.
Both the engine and the game files can be downloaded at https://alephone.lhowon.org/.
As a bonus, the game files provided by Aleph One include the HD weapons and UI used in the Xbox Live Arcade release of Marathon 2: Durandal.
A legal serial key generator for the retail versions of all Marathon games. Refresh the page to get a new batch of keys. Marathon Infinity keys are stated with "MI" before the codes.
It can be found at http://marathon.bungie.org/maraserialgen/.
A map creation tool bundled in with Marathon Infinity, it allows anyone to make professional levels for the Marathon Trilogy. It can be downloaded for free at http://trilogyrelease.bungie.org/ along with the rest of the Trilogy. The Marathon Infinity manual contains a guide on how to use all of the Forge features and some example maps are also available for download.
A file editor bundled in with Marathon Infinity, it allows anyone to modify Physics, Shapes, and Sounds files used by the Marathon Trilogy. It can be downloaded for free at http://trilogyrelease.bungie.org/ along with the rest of the Trilogy. The Marathon Infinity manual contains a guide on how to use all of the Anvil features.
<marathon><view><fov normal="120" extra="160" tunnel="70" /></view></marathon>