Adelaide went down to Fremantle by 18 points in its Anzac Day clash at Optus Oval.
The Crows mounted a fightback in the final term but the Dockers prevailed 12.13 (85) to 9.13 (67) in the annual Len Hall Tribute game on Friday night.
Fremantle did its best work early in a six-goal opening quarter and then ground the Crows down through the middle stages, with a goalless fourth-quarter the only blemish as Adelaide tried desperately chase down a 42-point margin at the last change.
Crows key forward Riley Thilthorpe booted three goals but left the ground during the third quarter with a finger issue, while aptain Jordan Dawson (21 and six inside 50s) also fought hard.
Fremantle's Shai Bolton and Adelaide's Izak Rankine matched each other with a pair of outstanding goals from half chances, with Hayden Young leading hard to take a contested mark just before quarter-time and extending the Dockers' lead to 25 points at the first change.
Josh Treacy and Jye Amiss continued to trouble the Crows' key defenders early in the second quarter and kicked back-to-back goals to extend the lead to a game-high 37 points, with the Crows desperate for a spark.
It came from Josh Rachele in his first game back from rib injuries, as well Thilthorpe, who kicked consecutive goals to get the Crows back in the game and cut the margin to 20 points at half time.
The third quarter was hard fought and relatively even in general play, but it belonged to Fremantle on the scoreboard as the Crows wasted chances and ultimately lost their grip on the game.
The Dockers turned the screws defensively and kept the Crows goalless for the quarter before pouncing late as Murphy Reid dribbled a brilliant goal on the run and Sam Switkowski snapped another to set the margin at 42 points.
The Crows rallied in the fourth but were too far adrift.
Dockers midfielder Andrew Brayshaw typified the tougher and more desperate Dockers, winning the first Arthur Leggett Medal as best afield and finishing with 37 disposals (17 contested) and eight inside 50s.
SCOREBOARD
FREMANTLE 6.2 8.6 12.8 12.13 (85)
ADELAIDE 2.1 5.4 5.8 9.13 (67)
GOALS
Fremantle: Amiss 2, McDonald 2, Treacy 2, Frederick 2, Bolton, Young, Reid, Switkowski
Adelaide: Thilthorpe 3, Walker 2, Soligo, Rankine, Rachele, Neal-Bullen
BEST
Fremantle: Brayshaw, Serong, Clark, Ryan, Treacy, Pearce, Johnson
Adelaide: Dawson, Thilthorpe, Worrell, Laird, Neal-Bullen
SUBSTITUTES
Fremantle: Quinton Narkle (replaced Isaiah Dudley in the fourth quarter)
Adelaide: Sid Draper (replaced Matt Crouch at three-quarter time)
Crowd: 53,048 at Optus Stadium