The second-seeded Nadal polished off No. 5 seed Milos Raonic 6-4, 6-0 and continued his bid for an eighth title at Barcelona.
Nadal won 63 percent of his return points and broke serve three times. Nadal has reached the finals in five tournaments this year.
The fourth-seeded Almagro, who was runner-up at Houston this month, cruised past eighth-seeded Philipp Kohlschreiber of Germany 6-2, 6-1 in 51 minutes.
Saturday's play was delayed 4 hours by rain.
Duggar sisters unveil Christian dating rules in new book
Astronomers offer more expansive view of universe