Show[ParametricPlot[#[[1]]*{Cos[θ], Sin[θ]}, {θ, #[[2]], #[[3]]},
Axes -> False, PlotStyle -> #[[4]]] /.
Line[x_] :> Sequence[Arrowheads[{-0.05, 0.05}], Arrow[x]] & /@
{{1, 0 Degree, 90 Degree, Red}, {1.25, 0 Degree, 270 Degree, Blue},
{1.5, 0 Degree, 180 Degree, Green}},
PlotRange -> All]

Update: A function using a single ParametricPlot
with multiple circles with arrows:
ClearAll[arcsWArrows];
arcsWArrows[args1 : {{_, {_, _}} ..}, dir_List: {Directive[GrayLevel[.3],
Arrowheads[{{-0.05, 0}, {0.05, 1}}]]}] :=
ParametricPlot[ Evaluate[#[[1]]*{ Cos[Rescale[u, {0, 2 Pi}, Abs@#[[2]]]],
Sin[Rescale[u, {0, 2 Pi}, Abs@#[[2]]]]} & /@ args1],
{u, 0, 2 Pi}, PlotStyle -> dir, Axes -> False,
PlotRangePadding -> .2, ImageSize -> 200] /.
Line[x_, ___] :> Arrow[x]
Usage:
rdsAndAngls = {{1, {0, π/2}}, {1.25, {0, π}}, {1.5, {0, (3 π)/2}}, {2, {π/4, (4 π)/2}}};
directives = {Directive[Red, Thick, Arrowheads[{{-0.05, 0}, {0.05, 1}}]],
Directive[Blue, Dashed, Arrowheads[{{-0.05, 0}, {0.05, 1}}]],
Directive[Green, Arrowheads[{{-0.05, 0}, {0.05, 1}}]],
Directive[Orange, Thickness[.02], Arrowheads[{{-0.07, 0}, {0.07, 1}}]]};
Row[{arcsWArrows[rdsAndAngls],
arcsWArrows[rdsAndAngls, {directives[[1]]}],
arcsWArrows[rdsAndAngls, directives],
arcsWArrows[rdsAndAngls, directives[[-1 ;; 2 ;; -1]]]}]

Graphics[Arrow[ BezierCurve[{Sin[#], Cos[#]} & /@ Range[0, Pi, .01]]]]
. That can't be the right approach, can it? $\endgroup$Arrow[]
can takeBSplineCurve[]
arguments, you can use the functions in this question to get circular arcs with arrow heads. Witness for instanceArrow[BSplineCurve[{{1, 0}, {1, Sqrt[3]}, {-1/2, Sqrt[3]/2}}, SplineDegree -> 2, SplineKnots -> {0, 0, 0, 1, 1, 1}, SplineWeights -> {1, 1/2, 1}]] // Graphics
$\endgroup$