The versatile 21-year old has spent the past two seasons with Dundee, but will now join the Elite League champions.
"He's a guy that is going to challenge himself every day to get better and better," said Devils coach Andrew Lord.
"Craig is comfortable playing forward and defence and I think he is going to come in and challenge some of the older guys for more minutes and I also think he is going to be a real vocal guy."
Cardiff Devils have signed former Dundee Stars player Craig Moore.