If the argument list always has this same structure, you can just refer to the pattern names you've already used:
fList[{flag_, LRc_, cL_, cR_, alphaL_, alphaR_, LRC_, CL_, CR_, AlphaL_, AlphaR_}] :=
StringForm["``-``-``-``-``-``-``-``-``-``-``", LRc, CR, AlphaL, flag, cL, alphaL, cR, alphaR, CL, AlphaR, LRC];
fList[Range[11]] // ToString
(* "2-9-10-1-3-5-4-6-8-11-7" *)
But if you really want to access by index, then you'll need a pattern name for the whole list:
fList[args : {flag_, LRc_, cL_, cR_, alphaL_, alphaR_, LRC_, CL_, CR_, AlphaL_, AlphaR_}] :=
StringForm["``-``-``-``-``-``-``-``-``-``-``:::``:::(``)", LRc, CR, AlphaL, flag, cL, alphaL, cR, alphaR, CL, AlphaR, LRC, args, args[[5]]];
fList[Range[11]] // ToString
(* "2-9-10-1-3-5-4-6-8-11-7:::{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}:::(5)" *)
And if you only want to access by index, you don't need all those other pattern names:
fList[args : {_, _, _, _, _, _, _, _, _, _, _}] := args[[RandomSample[Range[11]]]];
fList[Range[11]]
(* {3, 1, 4, 6, 8, 11, 2, 7, 10, 5, 9} *)
And if you don't actually want to restrict it to 11 arguments, but any arbitrary number:
fList[args : {___}] := RandomSample[args];
fList[Range[5]]
(* {1, 5, 4, 2, 3} *)
And also, you can index into any one particular argument:
fList[{flag_, LRc_, cL_, cR_, alphaL_, alphaR_, LRC_, CL_, CR_,
AlphaL_, AlphaR_}] := cL[[2]];
fList[{1, 2, {100, 101, 102, 103}, 4, 5, 6, 7, 8, 9, 10, 11}]
(* 101 *)