Silva deltok i junior-VM i 1996 og ble nummer seks på 1500 meter. Det store gjennombruddet fikk han i 1998, da han ble europamester innendørs og tok sølv i EM utendørs i Budapest. Han kvalifiserte seg til finalen og ble nummer fem i innendørs-VM 1999.
I 2000 tok han sølv i innendørs-EM på 3000 meter. Han deltok også i OL 2000 i Sydney, der ble han imidlertid slått ut i de innledende heatene. I innendørs-VM på hjemmebane i Lisboa i 2001 ble han verdensmester på tiden 3.51,06. Utendørs kom han til finalen i VM i Edmonton samme år, og ble nummer sju på tiden 3.35,74.
I 2002 ble han igjen europamester innendørs på tiden 3.49,93. Han tok i tillegg bronse ved EM i München. I 2003 ble han nummer fem i VM i Paris, denne gang på tiden 3.33,68.