The Welsh government said it would pay nearly 222,000 people the equivalent of £735 each, with an element to cover tax and National Insurance deductions.
It means most would get £500, Health Minster Vaughan Gething said, adding it "expresses our gratitude" to those working in those jobs.
But the Royal College of Nursing warned "a one-off Covid-19 bonus is not a significant and substantive pay rise".
It is the second bonus for social care staff, and the first for NHS workers.
"Nurses have gone above and beyond in the past 12 months," said Helen Whyley, director of RCN Wales.
She called for fair pay that encouraged nurses to stay in the profession and attract more staff.
However, the announcement was welcomed by the trade union Unison Cymru Wales, which said it was "in contrast to the insulting approach of the Conservative UK government".
The Department of Health and Social Care has recommended a 1% pay rise to an independent panel examining salaries of NHS staff in England.
Prime Minister Boris Johnson has said it was as much as ministers could give. The £735 payment is separate to NHS pay.
The Welsh Tories' Janet Finch-Saunders called for "longer-term pay recognition" for staff, while Plaid Cymru said the difference in health care and social care pay needed to be addressed.
Both parties backed a minimum wage for social care workers of £10 an hour in the Senedd on Wednesday evening.
The bonus award, the Welsh government said, will benefit an estimated 221,945 people.
They include 103,600 social care staff, 90,000 NHS Wales staff, 2,345 deployed students and 26,000 primary care staff, including pharmacy, GP, dental and optometry workers.
Last year a £500 payment was made to social care staff, but it did not cover any element of tax that would need to be paid on it.
Welsh ministers argued the Treasury should cover it. Plaid had called the handling of the matter "baffling".
The Welsh government said it was working with councils - which fund social care - and trade unions to finalise how the new payments would work.
At a Covid briefing on Wednesday Mr Gething said the Welsh government would not set an "arbitrary cap" on a pay rise for NHS staff.
The issue of NHS pay rises is considered by independent pay review bodies who recommend how much staff should earn.
"For NHS staff it really does feel like a kick in the teeth for the UK government to say there would only be a 1% pay raise and that's what they want the pay review bodies to agree to," said Mr Gething.
"That isn't what we've done here in Wales, I've released the evidence and the letters that I have sent to those pay review bodies, we are not setting an arbitrary cap."
The announcement came ahead of a Senedd debate, where Plaid Cymru said it would call for social workers to receive £10 an hour.
Delyth Jewell, Plaid Cymru Senedd member, said: "This is a one-off recognition, it's a bonus because of the sacrifices that everyone in these sectors have had to make this past year
"The wider conversation we should be having is about the fact that there is this huge disparity between what health workers, and what care workers receive."
Janet Finch-Saunders, for the Welsh Conservatives, told BBC Wales she wanted to see "longer-term pay recognition" for staff, but said the payment was "welcome news".
Asked what she would want to see in terms of a pay rise, she said: "I don't think you can quantify or put in an actual percentage figure, but I just hope that here in Wales with the money that they now have that they actually do reward our health and social care workers."
One of the key problems today is that politics is such a disgrace, good people don't go into government.