A sweeping emergency aid bill for Ukraine and Israel inched ahead in the Senate on Thursday, providing glimmers of hope for the measure after a series of setbacks.
But hurdles remained as Republicans slow-walked progress, demanding changes and feuding internally over whether to back it.
In a bipartisan show of support, the Senate voted 67 to 32 to advance the bill, with 17 Republicans joining Democrats to move it forward. The legislation would provide $60.1 billion for Ukraine, $14.1 billion for Israel and $10 billion in humanitarian aid for civilians in global conflicts. But many Republicans were still withholding their backing as they demanded changes to the package, and many others opposed it outright.
“We hope to reach an agreement with our Republican colleagues on amendments,” Senator Chuck Schumer, Democrat of New York and the majority leader, said. “We are going to keep working on this bill until the job is done.”
Some predicted that Senate consideration could still take days, and leaders in both parties expected to spend the weekend working through the remaining disputes. If it survives and can pass, the legislation still faces steep challenges in the House, where a large group of Republicans are vehemently opposed. Still, proponents of the measure said Thursday’s action suggested that the aid package, which has been stalled for months, might finally have a path toward approval in Congress.
President Volodymyr Zelensky of Ukraine called the vote “a very important first step to continue support for Ukraine’s victory and increase our shared security,” in a social media post in which he wrote: “This is a bad day for Putin, and a good day for democracies.”
Among other things, Senate Republicans are insisting on the opportunity to add border restrictions to the package — despite having voted Wednesday to block a version of the legislation that included a bipartisan package of border restrictions. They spent much of Thursday haggling over which changes to seek.
The sluggish action was the latest manifestation of discord that has roiled the G.O.P. and imperiled the emergency national security spending bill. Republicans have clashed over how to address international crises without angering the leader of their party and its likely presidential nominee, former President Donald J. Trump.
Senate Republicans had initially signaled early Wednesday that they were likely to support moving forward with a clean foreign aid bill without border provisions as long as they had opportunities to propose changes, terms that Mr. Schumer agreed to in principle. Leaders on both sides were optimistic that they would have enough backing to speedily advance the measure.
But their optimism soon gave way to frustration, as Republicans devolved into a familiar crouch, torn between rival factions and utterly unable to make a decision about how to proceed. They spent much of Wednesday afternoon and evening squabbling over which amendments to insist on — and some argued privately they should not allow the bill to move forward at all.
On Thursday morning, G.O.P. senators still had not settled on a way ahead. Still, a midday vote cleared away an immediate obstacle and allowed proponents to breathe a momentary sigh of relief as they worked to bridge the gap that remained.
Republican senators are split, with some staunchly supportive of sending a fresh infusion of military aid to help Ukraine fight off a Russian invasion, and those on the right deeply opposed to doing so. And some G.O.P. senators who back the aid are nonetheless concerned that doing so without exacting a price from Democrats would compromise them politically in an election year, given Mr. Trump’s opposition to backing Ukraine’s war effort.
“Failing to take this up is exactly what Putin hopes happens this week, and I’m going to do everything I can to prevent it,” said one of them, Senator Thom Tillis of North Carolina.
But other Republicans who have championed aid to Ukraine continued to withhold their support. They included Senators Lindsey Graham of South Carolina and James Lankford of Oklahoma. Mr. Lankford spent the past four months negotiating a bipartisan deal to pair Ukraine funding with border security measures, a trade-off Republicans had demanded, only to have it rejected by Republicans on Wednesday.
“You’ve hurt the cause of Ukraine by trying to shortchange the debate on the border,” Mr. Graham said on the Senate floor, despite having voted on Wednesday to kill the Ukraine aid and border deal. “You may get this bill passed without any border, but it’s going nowhere in the House.”
Among the border-related amendments that had been floated by Republicans were a measure reflecting Mr. Lankford’s border deal and a more severe immigration enforcement bill that House Republicans passed last spring. Mr. Graham also wanted an amendment to cap the number of migrants that could be paroled into the United States at 10,000 annually.
There were also talks about a bid to revoke or change the Flores settlement agreement, which sets limits on how long children can be held in detention facilities, according to Senate aides who described the discussions on the condition of anonymity because no decision had been made about whether to pursue the proposal.
Senator Dan Sullivan, Republican of Alaska, who voted to advance the measure on Thursday, said he also wanted a vote on scaling back the humanitarian aid portion of the bill, which would help Ukrainian and Palestinian civilians.
Other Republicans said they would oppose the measure no matter what changes were made to it.
“That’d be window dressing,” Senator Mike Braun, Republican of Indiana, said of the modifications being discussed.
Democrats also have a wish list of changes. Nearly 20 Democratic senators, most of them from the left wing of the party, have signed on to a proposal that would require recipients of security aid to use weapons in accordance with U.S. law, international humanitarian law and the laws of armed conflict — and not hamper efforts to send humanitarian aid to civilians. While the measure does not specifically mention Israel, it was inspired by senators’ concerns about that country’s bombardment of the Gaza Strip running afoul of international law.
Senator Bernie Sanders, the Vermont independent who has railed against sending Israel unconditional military aid given the enormous civilian death toll in Gaza, voted against advancing the bill.
Republican opponents pledged to make the process of passing the measure as long and painful as possible.
“I will insist on every minute and every day of it,” said Senator Rand Paul, Republican of Kentucky. “I want to be here a week, because I want to talk about what a disaster the bill is and what a mistake it is to send our money to other countries before we fix our own problems here.”
Carl Hulse contributed reporting.