Britain announced plans on Wednesday to charge migrants hundreds of pounds a year to access its state-run National Health Service (NHS), in a bid to clamp down on so-called health tourism.
Health Secretary Jeremy Hunt also proposes to stop giving visitors from outside the European Economic Area (EEA) free access to general practitioners (GPs).
"We have been clear that we are a national health service, not an international health service, and I am determined to wipe out abuse in the system," he said.
Ministers have yet to establish exactly how much GP visits for migrants are costing the NHS. The move to charge them is tied in to a wider clampdown on immigration by Britain's Conservative-led coalition government.
Access to accident and emergency care will not be affected by the changes and will remain free.
The proposals have sparked concern among health professionals, who warn that the measures pose a public health risk by deterring ill patients from seeking treatment.
"People use the NHS if they've got infections and we certainly don't want to have people wandering around for fear of being charged at the GP surgery," Clare Gerada, chairwoman of the Royal College of General Practitioners, told BBC radio.
She added: "I don't think we should be turning the GP surgery into a border agency."
The National AIDS Trust (NAT) said the plans also threatened to undermine years of work to encourage marginalised at-risk groups to access HIV testing and treatment.
"By limiting access to primary care for some migrants living in England we would cut off the only place many of them will get an HIV diagnosis," chief executive Deborah Jack said.
Under the proposals, which will be put out to public consultation, people visiting Britain for less than six months would have to pay to visit a GP. They already have to pay for routine hospital care.
Students and workers staying more than six months would be charged a set fee of at least £200 (235 euros, $300) a year to cover NHS costs when they apply for their visas. This is in addition to taxes used to fund the health service.
The government also wants to boost efforts by the NHS to recoup the cost of treating patients from EEA countries -- the European Union plus Norway, Liechtenstein and Iceland.
The health service currently writes off about £12 million a year that could be claimed back from EEA governments, the Department of Health said.
Countries such as Australia, which have a special agreement to allow their citizens free healthcare in Britain, will not be affected by the changes.