In 2004, Carrasco pitched for the Kintetsu Buffaloes of Japan's Pacific League, going 8–8 with five saves and a 5.57 ERA in 53 relief appearances. He began the 2005 season at the then Washington Nationals' Triple-A affiliate, New Orleans Zephyrs, where he was 1–0 with four saves in eight games without allowing an earned run, before being called up and having a terrific year for the Nats. He made 64 appearances (10th in the league), primarily as the set up man for closerChad Cordero, pitching 88+1⁄3 innings, with an ERA of just 2.04, although he also started five games. His WHIP (BB + H per IP) was 1.098, which would have been good enough for fifth in the league had he had the requisite number of innings pitched.
Following the 2005 season, Carrasco filed for free agency, and was signed by the Angels to a $6.1 million, two-year contract. In 2006, Carrasco was 7–3 with a 3.41 ERA in 56 appearances, three as a starter. But in 2007, after 29 appearances where he posted an ERA of 6.57, and allowing 8 HR's in 38+1⁄3 innings, he was released. The following week, Carrasco returned to the Nationals organization by signing a minor league contract. On Jan. 24, 2008, Carrasco signed a minor-league contract with an invitation to spring training with the Pirates. He was released on March 26, 2008. In early May, he signed a minor league contract with the Chicago Cubs. He became a free agent at the end of the season.