I’ve tried to use a paper-solvable approach to solving this puzzle; well at least insertion solving rather than elimination solving.
While going through my walkthrough again, before going through Simon's one, I found several typos which I've corrected.
1. 45 rule on N2 R123C4 = 6 must be {123}
2. 45 rule on R5 R5C159 = 6 must be {123} -> no 1,2,3 in R19C159 (see
Hidden Windows)
3. 9(3) cage at R1C3 must contain two of 1,2,3 -> R1C3 = {123} (otherwise there would be four of 1,2,3 in W1)
3a. The other one of 1,2,3 must be in R2C3 or R3C3, no other places for 1,2,3 in W1
4. No 1,2,3 in 21(3) cage at R5C2, 21(3) cage at R9C1 or 22(3) cage at R7C4 -> R1C234 = {123} (hidden window R159C234)
4a. 1,2,3 in R1C23 and one of R23C3, no other 1,2,3 in N1
5. 45 rule on hidden window R159C234 -> R9C234 = 18 -> R9C1 = R9C4 + 3 -> R9C1 = {89}, R9C4 = {56}
5a. 22(3) cage at R7C4 must contain 9 in R78C4 for C4, N8 and W3
5b. 4 in C4 must be in R456C4 for N5
6. 19(3) cage at R1C1 = {469/478/568}
6a. 8,9 in C1 only in 19(3) cage and R9C1
7. 9(3) cage at R6C2 must have one of 4,5,6 in R6C4 and two of 1,2,3 in R6C23
8. 9(3) cage at R7C1 must contain two of 1,2,3 and one of 4,5,6 -> R7C1 must be {123} (otherwise there would be four of 1,2,3 in W3), R7C23 must contain one of 1,2,3 and one of 4,5,6
8a. 1,2,3 in W3 are in R6C23 and one of R7C23, no other 1,2,3 in W3 -> R8C2 = {456} -> R2C8 = {123}
8b. 4,5,6 in W3 are in R6C4, one of R7C23 and in R8C2, no other 4,5,6 in W3 -> R8C3 = {78}
9. 21(3) cage at R9C1 = {489/579} (cannot be {678} which clashes with R8C3)
10. R8C1 = {123}, only other place for 1,2,3 in N7
11. 6 in N7 must in R7C23 or R8C2, no other 6 in W3 -> R6C4 = {45}
12. 9(3) cage at R6C2 = {135/234} must contain 3 in R6C23, only 3 in R6, N4 and W3 -> R5C1 = {12}
13. 45 rule on D\ 4 innies R1C1 + R3C3 + R7C7 + R9C9 = 14 cannot contain 9 -> either 13(2) disjoint cage at R2C2 or 18(3) cage at R4C4 must contain 9
13a. 20(3) cage at R1C6 and 20(3) cage at R1C7 = {479/569/578} and must have different combinations because all cells of 20(3) cage at R1C7 “see” R1C6 -> at least one of these combinations must contain 9 -> no 9 in R1C5, also no 9 in R1C1 (from D\) -> R1C6789 must contain 9
13b. At least one of 20(3) cage at R1C6 and 20(3) cage at R1C7 must contain 5 and at least one must contain 7 -> no 5,7 in R1C5 -> R1C5 = {468}
14. R9C1 = {89} -> R1C9 + R3C7 must contain 7 and one of 8,9 (only remaining places on D/)
15. 14(3) cage at R3C7 must contain one of 1,2,3, R3C4 contains one of 1,2,3 -> R3C23 must contain one of 1,2,3, but this must be in one of R23C3 (step 3a) -> R3C3 = {123}, R2C3 = {456}
16. 1,2,3 in C3 are in R136C3 -> 9(3) cage at R7C1 must have one of 4,5,6 in R7C3 and two of 1,2,3 in R7C12
17. R4C6 must contain one of 1,2,3 (only remaining position on D/)
[Only just spotted this, it’s been there since step 4; then I realised that it’s been there since step 2.]
18. R9C678 = {123} (only remaining place for 1,2,3 in hidden window R159C678)
18a. 9(3) cage at R7C7 must contain two of 1,2,3 -> all 1,2,3 in N9 must be in 9(3) cage and R9C8
19. 18(3) cage at R4C4 can only contain one of 1,2,3 in R5C5, R3C3 = {123} -> R7C7 = {123} (only remaining position on D\) -> R8C7 = {456}
20. R12356C6 cannot contain 1,2,3, R49C6 both contain one of 1,2,3 -> one of R78C6 must contain one of 1,2,3
20a. R78C6 contains one of 1,2,3, R7C7 contains one of 1,2,3, no other positions for 1,2,3 in both N9 and W4 -> one of R6C78 must contain one of 1,2,3 (actually one of 1,2 because R6C12 contains 3 for N4)
20b. 1,2,3 in R6 in R6C23 and one of R6C78 -> R4C5 must contain one of 1,2,3 (only remaining position in N5) -> R4C7 must contain one of 4,5,6
21. 13(2) disjoint cage must contain one of 4,5,6, 18(3) cage at R4C4 cannot contain any of 4,5,6 (because R5C5 is one of 1,2,3) -> R1C1 + R9C9 must each contain one of 4,5,6 (only remaining positions on D\)
22. R9C9 = {456} -> R78C9 must contain two of 7,8,9
22a. R8C34 and R8C9 each contain one of 7,8,9, no other 7,8,9 in R8 -> R8C8 = {456}, R2C2 = {789}, R7C8 = {789} (remaining cell in N9)
23. R7C56 = {456} (remaining positions in R7) -> R8C6 = {123} (only remaining position in C6)
23a. R8C5 = {123}, R9C5 = {78} (only remaining positions in N8)
24. 19(3) cage at R1C5 = {469/568} (cannot be {478} which clashes with R9C5), 6 in C5 and N2 must be in 19(3) cage
24a. 19(3) cage contains one of 8,9, R9C5 contains one of 7,8 -> R6C5 must contain one of 7,8,9
24b. 7 in N2 must be in 20(3) cage at R1C6, no other 7 in C6
25. R2C2 = one of 7,8,9 -> R4C4 must contain one of 7,8 and R6C6 must contain one of 8,9 (only remaining positions of D\)
26. R5C46 must contain one of 4,5,6
26a. 21(3) cage at R5C2 contains one of 4,5,6 and two of 7,8,9 -> R5C23 must contain two of 7,8,9
27. R6C78 must contain one of 1,2,3 and one of 7,8,9 for W4
27a. R6C19 must each contain one of 4,5,6 (only remaining positions in R6)
[Something else I ought to have spotted earlier.]
28. 45 rule for hidden window R159C678, 18(3) cage at R5C6, R9C678 = {123} = 6 -> R1C678 = 21(3) -> R1C6 = R1C9 + 1, no 9 in R1C9
28a. R1C9 = {78} -> R1C6 = {89}
29. 9 in C9 must be in R78C9 -> R7C8 = {78}
29a. 21(3) cage at R7C9 contains 9 = {489/579} -> R9C9 = {45}
30. 6 in N9 only in R8C78, no other 6 in R8 or W4 -> R7C6 = {45}, R8C2 = {45}, R2C8 = {23}
30a. 1 on D/ only in R4C4 and R5C5 -> R4C5 = {23}
[And eventually the first placements.]
31. R7C3 = 6 (hidden single in N7) -> R7C12 = {12}, R8C1 = 3 (only remaining position in N7), R9C6 = 3 (only remaining position in N8), R7C7 = 3 (only remaining position in N9), placed for D\, R4C5 = 3 (only remaining position in N5)
32. R5C6 = 6 (only remaining position in C6, cannot be in 20(3) cage at R1C6), R9C4 = 6 (only remaining position in C4)
33. 22(3) cage at R7C4 = {679} (only remaining combination) -> R78C4 = {79} -> R9C5 = 8, R4C4 = 8, placed for D\, R6C6 = 9, placed for D\, R5C5 = 1 (cage sum), placed for D\, R2C2 = 7, R5C19 = [23], R7C12 = [12], R6C5 = 7, R4C6 = 2, placed for D/, R4C7 = 4 (cage sum), R2C8 = 3, R8C2 = 4 (cage sum), placed for D/, R6C4 = 5, R5C4 = 4
34. R9C9 = 4 (only remaining position in N9), placed for D\ -> 21(3) cage at R7C9 = {489} -> R7C8 = 7, R1C9 = 7, R1C6 = 8
34a. R9C1 = 9, placed for D/ -> R3C7 = 8
35. 19(3) cage at R1C1 = {568} (only remaining combination) -> R2C1 = 8, R2C3 = 4, R6C1 = 4, R6C9 = 6
35a. R4C1 = 7 (only remaining position in C1)
36. R4C23 = [65] (only remaining positions in N4), R4C89 = [91] (only remaining positions in R4)
37. 20(3) cage at R1C7 contains 7 = {479} (only remaining combination) -> R1C8 = 4, R1C7 = 9, R1C5 = 6, R1C1 = 5, placed for D\, R3C1 = 6, R8C8 = 6, R8C7 = 5, R9C7 = 1 (cage sum), R9C8 = 2
38. R3C3 = 2, R1C3 = 3 (cage sum), R1C2 = 1, R123C4 = [213], R6C23 = [31]
39. R3C2 = 9 (only remaining position in N1), R5C23 = [89]
40. R9C23 = [57] (only remaining positions in R9), R8C3 = 8, R78C9 = [89], R78C4 = [97]
41. 19(3) cage at R1C5 contains 6 = {469} (only remaining combination) -> R2C5 = 9, R3C5 = 4
42. R23C6 = [57] (only remaining positions in N2)
43. R3C89 = [15] (only remaining positions in R3)
44. R2C79 = [62] (only remaining positions in R2)
45. R5C78 = [75] (only remaining positions in R5)
46. R6C78 = [28] (only remaining positions in R6)
and having finished the hidden singles, to wrap up
47. R7C56 = [45], R8C56 = [21]